Details
-
Suggestion
-
Resolution: Unresolved
Description
During investigation work carried out as part of a support ticket (CRC-2833), we came across non-optimal anchoring behaviour with certain pre-commit patches.
We already feed information to Crucible in the form of a default Fisheye repo to be associated with the review project.
From what I can tell Crucible is ignoring this information and attempting to anchor the patch to all repos (possibly in alphabetical order)
I think the following is pretty reasonable set of anchoring steps to be taken by Crucible:
1. Check if patch can be anchored to default repository of project. If no path has been specified within default repo, Crucible already defaults to trunk
2. If it cannot be anchored to trunk, then alert the user to this fact and present them with a screen to the select a branch from the associated repo, or a different repo+branch altogether.
The following are the steps we took to show the problem.
- Created a new pre-commit review
- Uploaded OMS-13597.patch (attached) which is an extremely simply patch against the trunk of one of our repos (and contains full path information)
- Crucible tried to anchor the patch and presented us with the message seen in crc-2833_simple-patch-anchor-failure.png attached
- When we then selected the repo manually, Crucible went off for 30-45 seconds grabbing a list of the branches within the repo crc-2833_simple-patch-anchor-failure-2.png
- When we selected trunk for the repo in question, Crucible was able to anchor the patch crc-2833_simple-patch-anchor-failure-3.png
I guess I'm wondering why Crucible didn't check the default repo and path associated with the review project first?
If it had, it should have been able to anchor straight away, without all the manual intervention.