# The form data below was edited by robert_cowham # Perforce Workshop Jobs # # Job: The job name. 'new' generates a sequenced job number. # # Status: Job status; required field. There is no enforced or # promoted workflow for transition of jobs from one # status to another, just a set of job status values # for users to apply as they see fit. Possible values: # # open - Issue is available to be worked on. # # inprogress - Active development is in progress. # # blocked - Issue cannot be implemented for some reason. # # fixed - Fixed, optional status to use before closed. # # closed - Issue has been dealt with definitively. # # punted - Decision made not to address the issue, # possibly not ever. # # suspended - Decision made not to address the issue # in the immediate future, but noting that it may # have some merit and may be revisited later. # # duplicate - Duplicate of another issue that. # # obsolete - The need behind the request has become # overcome by events. # # Project: The project this job is for. Required. # # Severity: [A/B/C] (A is highest) Required. # # ReportedBy The user who created the job. Can be changed. # # ReportedDate: The date the job was created. Automatic. # # ModifiedBy: The user who last modified this job. Automatic. # # ModifiedDate: The date this job was last modified. Automatic. # # OwnedBy: The owner, responsible for doing the job. Optional. # # Description: Description of the job. Required. # # DevNotes: Developer's comments. Optional. Can be used to # explain a status, e.g. for blocked, punted, # obsolete or duplicate jobs. May also provide # additional information such as the earliest release # in which a bug is known to exist. # # Component: Projects may use this optional field to indicate # which component of the project a givenjob is associated # with. # # For the SDP, the list of components is defined in: # //guest/perforce_software/sdp/tools/components.txt # # Type: Type of job [Bug/Feature]. Required. # # Release: Release in which job is intended to be fixed. Job: SDP-449 Status: open Project: perforce-software-sdp Severity: C ReportedBy: brett ReportedDate: 2020/01/24 14:38:33 ModifiedBy: robert_cowham ModifiedDate: 2020/02/19 01:26:55 OwnedBy: robert_cowham Description: Add support for sidetrack servers to Windows SDP. A "sidetrack server" is an additional p4d process that shares the same P4ROOT as the main p4d process, but listens on a differnt P4PORT. P4D uses file-locking for db.* files, making this a safe thing to do. Sidetrack servers have various use cases. Some info: * https://community.perforce.com/s/article/3132 * https://community.perforce.com/s/article/5183 The Windows implementation will need to extend the Windows service naming convention for Helix services from something like p4d_1 to maybe p4d_1 and p4d_1s or some such. It might even be something we can document a manual procedure for setting up? ======== This can be done by a editing the single .bat file which is generated as part of install process – the one which creates the service definition. From: <<<<< C:\p4\sdp\Windows\setup>type install_services_win-b7uq3e1tn83.bat @echo off FOR /F "usebackq" %%i IN (`hostname`) DO SET HOSTNAME=%%i if /i "%HOSTNAME%" NEQ "win-b7uq3e1tn83" ( echo ERROR: This command file should only be run on machine with hostname "win-b7uq3e1tn83" exit /b 1 ) @echo on c:\p4\common\bin\instsrv.exe p4_fm1 "c:\p4\fm1\bin\p4s.exe" c:\p4\fm1\bin\p4.exe set -S p4_fm1 P4ROOT=c:\p4\fm1\root c:\p4\fm1\bin\p4.exe set -S p4_fm1 P4JOURNAL=c:\p4\fm1\logs\journal c:\p4\fm1\bin\p4.exe set -S p4_fm1 P4NAME=fm1 c:\p4\fm1\bin\p4.exe set -S p4_fm1 P4PORT=2111 c:\p4\fm1\bin\p4.exe set -S p4_fm1 P4LOG=c:\p4\fm1\logs\fm1.log >>>> To (noting change of "fm1" to "fm1a" at appropriate points): <<<<<<< @echo off FOR /F "usebackq" %%i IN (`hostname`) DO SET HOSTNAME=%%i if /i "%HOSTNAME%" NEQ "win-b7uq3e1tn83" ( echo ERROR: This command file should only be run on machine with hostname "win-b7uq3e1tn83" exit /b 1 ) @echo on c:\p4\common\bin\instsrv.exe p4_fm1a "c:\p4\fm1\bin\p4s.exe" c:\p4\fm1\bin\p4.exe set -S p4_fm1a P4ROOT=c:\p4\fm1\root c:\p4\fm1\bin\p4.exe set -S p4_fm1a P4JOURNAL=c:\p4\fm1\logs\journal c:\p4\fm1\bin\p4.exe set -S p4_fm1a P4NAME=fm1a c:\p4\fm1\bin\p4.exe set -S p4_fm1a P4PORT=2111 c:\p4\fm1\bin\p4.exe set -S p4_fm1a P4LOG=c:\p4\fm1\logs\fm1a.log >>>>> C:\p4\sdp\Windows\setup>p4 -p 2005 info : Server address: WIN-B7UQ3E1TN83:2005 Server root: c:\p4\FM1\root Server date: 2020/01/25 12:42:39 +0000 GMT Standard Time Server uptime: 00:07:48 Server version: P4D/NTX64/2019.2/1897966 (2019/12/16) ServerID: FM1 Server services: commit-server Server license: none Case Handling: insensitive C:\p4\sdp\Windows\setup>p4 -p 2111 info : Server address: WIN-B7UQ3E1TN83:2111 Server root: c:\p4\fm1\root Server date: 2020/01/25 12:42:43 +0000 GMT Standard Time Server uptime: 00:00:27 Server version: P4D/NTX64/2019.2/1897966 (2019/12/16) ServerID: FM1 Server services: commit-server Server license: none Case Handling: insensitive So the above uses same journal but a different log – not sure whether it is easier just to use same log too… DevNotes: Component: core-win Type: Feature