[Community Supported] Utility for transferring a subset of files (with complete history of all changelists) from one Helix Core repository to another, only requiring read access to the source repository.
BSD 2-Clause "Simplified" License
43
stars
19
forks
source link
Failure on submit validate when destination is graph depot #15
A key error can happen if a change has no revisions:
Traceback (most recent call last):
File "/home/user/p4transfer/P4Transfer.py", line 2579, in replicate
num_changes = self.replicate_changes()
File "/home/user/p4transfer/P4Transfer.py", line 2396, in replicate_changes
targetChange = self.target.replicateChange(fileRevs, specialMoveRevs, srcFileLogs, change, self.source.p4.port)
File "/home/user/p4transfer/P4Transfer.py", line 1574, in replicateChange
self.validateSubmittedChange(newChangeId, fileRevs)
File "/home/user/p4transfer/P4Transfer.py", line 1624, in validateSubmittedChange
for (n, rev) in enumerate(change['rev']):
KeyError: 'rev'
I added a bit of debugging around this for the corresponding change object (returned from self.p4cmd('describe', '-s', newChangeId)[0]). The dictionary looks like:
There seem to be many issues if the target depot is a graph depot. I'm enumerating those now and will put together a comprehensive set of updates for it.
A key error can happen if a change has no revisions:
I added a bit of debugging around this for the corresponding change object (returned from
self.p4cmd('describe', '-s', newChangeId)[0]
). The dictionary looks like:The destination depot is a graph depot, which makes the change description different.