snowstorm icon indicating copy to clipboard operation
snowstorm copied to clipboard

UK/NHS Upgrade: dependent branch locked

Open evergreen-lee-campbell opened this issue 2 years ago • 1 comments

In order to upgrade a "UK Edition" branch to the 20210731 International Edition that was released with the latest NHS TRUD update, I attempted to perform the following steps, in accordance with your documentation:

  • Import SNAPSHOT from latest International Edition (branch MAIN)
  • Rebase existing UK Edition via the codesystems/upgrade endpoint (for branch MAIN/SNOMEDCT-UK)
  • Import DELTA from latest UK Edition (branch MAIN/SNOMEDCT-UK)

However, at the second step, I receive the following error:

{
  "error" : "BAD_REQUEST",
  "message" : "Branch MAIN/SNOMEDCT-UK is already locked"
}

The branch was not locked before the International Edition SNAPSHOT import started. If I unlock the branch and perform the DELTA import, everything seems to be in order (my MAIN/SNOMEDCT-UK branch now lists 20210731, rather than 20210131, as its dependantVersion, and its status is FORWARD).

Should I be worried? Is this some quirk of the structure of the UK Edition?

evergreen-lee-campbell avatar Jun 14 '22 09:06 evergreen-lee-campbell

This is not expected. Step 1 can not lock the MAIN/SNOMEDCT-UK branch. It's hard to say what has happened here without more information.

When a branch is locked it usually has branch metadata to describe what type of commit is happening on the branch, that can help understand what's going on. The logs are also a good source of information.

I would not trust the data without knowing why the branch was locked.

I would be tempted to rollback the commits for the delta import and UK upgrade steps then perform steps 2 and 3 again:

  • Commits can be rolled back using POST /admin/{branch}/actions/rollback-commit.
    • Please read the Swagger doc for this operation.
    • The value for the commitHeadTime param can be found as the headTimestamp property on the latest version of the branch, e.g. GET /branches/MAIN/SNOMEDCT-UK.
    • Two or three commits would need to be rolled back until the codesystem has a dependantVersionEffectiveTime of the previous version (20210131).
    • Check that the locked flag on the UK branch is false. Then the code system upgrade and delta import can be run again.

kaicode avatar Jun 14 '22 11:06 kaicode