My mainline stream still thinks the development streams needs a merge down, even after I obliterated the last changelist, and I will appreciate some help to fix that.
Story in short:
My mainline stream (named Main) has 2 development streams, one of them named Tintin. Until earlier today, everything from Main had been merged down to the development streams. One of the streams have not copied to mainline for almost 2 years, so there is a lot of modified files, which needs to get to mainline.
Using P4V I selected the development stream and ran the copy - which stopped with warning or error due to some renaming 2 years back (my changelist 81402) So after some reading I got the understanding that I should limit the scope for the copy up to changelist 81402, which completed nicely, and resulted in changelist 124031 on mainline stream.
But now Perforce insisted that I had to do a merge down, before I would be allowed to do a second run of copying to mainline, and resulting changelist did not look at all like what I expected.
So I ran p4 obliterate on the changelist but with the a small error:
p4 obliterate //Streams/Tintin/...@124031
But that should have been without the path, like this
p4 obliterate //...@124031
and now perforce says the file versions and integrations are gone (as expected) but the changelist 124031 is still existing, although it does not contain any files.
I want perforce to forget everything about changelist 124031, so I can get back to copying the development stream up to mainline again.
Its possible that in the time between your merge and failed attempt to copy more changes were made on the stream you are now trying to copy up, which would cause Perforce to require another merge.
I would recommend locking the offending dev stream down
Right click stream > Edit Stream > Advanced > Check the box next to Submitting files to the stream restricted to the stream owner
Execute a merge from Main to dev.
Execute copy from dev to main.
Let me know if that does/doesn't solve the issue.
Added note: You can also simply delete a changelist you don't need to go the overkill route with obliterate. Obliterate is dangerous simply because it removes any record of anything happening from history/meta data/etc.
Right click the changelist and select revert, once done you can delete the pending changelist.