README for P4Transfer.py ------------------------ This script is for use when transferring changes between 2 Perforce Servers. See P4Transfer.docx in the same directory for more details as to what it does and how to use it. Support ------- Any errors in the script are highly likely to be due to some unusual integration history, which may have been done with an older version of the Perforce server. If you have an error when running the script, please use summarise_log.sh to create a summary log file to send. E.g. summarise_log.sh log-P4Transfer-20141208094716.log > sum.log If you get an error message in the log file such as: P4TLogicException: Replication failure: missing elements in target changelist: /work/p4transfer/main/applications/util/Utils.java or P4TLogicException: Replication failure: src/target content differences found: rev = 1 action = branch type = text depotFile = //depot/main/applications/util/Utils.java Then please also send the following: A Revision Graph screen shot from the source server showing the specified file around the changelist which is being replicated. If an integration is involved then it is important to show the source of the integration. Filelog output for the file in the source Perforce repository, and filelog output for the source of the integrate being performed. e.g. p4 -ztag filelog /work/p4transfer/main/applications/util/Utils.java@12412 p4 -ztag filelog /work/p4transfer/dev/applications/util/Utils.java@12412 where 12412 is the changelist number being replicated when the problem occurred. Re-running P4Transfer after an error ------------------------------------ When an error has been fixed, you can usually re-start P4Transfer from where it left off. If the error occurred when validating changelist say 4253 on the target (which was say 12412 on the source) but found to be incorrect, the process is: p4 -p target-p4:1666 -u transfer_user -c transfer_workspace obliterate @4253,4253 (re-run the above with the -y flag to actually perform the obliterate) Ensure that the counter specified in your config file is set to a value less than 4253 Then re-run P4Transfer as previously.