Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-16830

Add versioning to PhotoCalib

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: afw

      Description

      While converting PhotoCalib to be defined in nanojansky, I realized it would be good to add versioning to its persisted output. Jim Bosch says that SkyWcs is probably the best example of how to do this (sadly, we have neither a standard nor a common convention for how to version persisted afw objects).

      For example, we are going to want to add a wavelength dependency in the future, which will definitely change the persistence.

        Attachments

          Issue Links

            Activity

            Hide
            Parejkoj John Parejko added a comment -

            Might want to do this before DM-16650 gets merged.

            Show
            Parejkoj John Parejko added a comment - Might want to do this before DM-16650 gets merged.
            Hide
            Parejkoj John Parejko added a comment -

            Jim Bosch: A quick review to tell me if this is what you had in mind? I added two files, one with the (default until now) no version, and one with an explicit version 0 (which I expect won't ever be used, since DM-16650 should be merged soon).

            I couldn't get it to work putting the version at the beginning of the schema, so unfortunately it goes at the end. Are schemas append only, or is there a way to rework it to allow the version to be the first thing from now on?

            Jira's not picking up the PR, so here it is: https://github.com/lsst/afw/pull/422

            Show
            Parejkoj John Parejko added a comment - Jim Bosch : A quick review to tell me if this is what you had in mind? I added two files, one with the (default until now) no version, and one with an explicit version 0 (which I expect won't ever be used, since DM-16650 should be merged soon). I couldn't get it to work putting the version at the beginning of the schema, so unfortunately it goes at the end. Are schemas append only, or is there a way to rework it to allow the version to be the first thing from now on? Jira's not picking up the PR, so here it is: https://github.com/lsst/afw/pull/422
            Show
            Parejkoj John Parejko added a comment - Jenkins: https://ci.lsst.codes/blue/organizations/jenkins/stack-os-matrix/detail/stack-os-matrix/29134/pipeline
            Hide
            jbosch Jim Bosch added a comment -

            Looks good.  Schemas are indeed append-only, and while you could play some games with SchemaMapper to move the version to the beginning, I definitely think it's better to just put it at the (current) end.  Where it appears in the sequence of fields is pretty hidden, anyway.

            Show
            jbosch Jim Bosch added a comment - Looks good.  Schemas are indeed append-only, and while you could play some games with SchemaMapper to move the version to the beginning, I definitely think it's better to just put it at the (current) end.  Where it appears in the sequence of fields is pretty hidden, anyway.
            Hide
            Parejkoj John Parejko added a comment -

            Thanks for the speedy review! Good call on pulling stuff into a getVersions()). I took out everything except the "throw on unknown versions" part.

            Merged and done.

            Show
            Parejkoj John Parejko added a comment - Thanks for the speedy review! Good call on pulling stuff into a getVersions()) . I took out everything except the "throw on unknown versions" part. Merged and done.

              People

              Assignee:
              Parejkoj John Parejko
              Reporter:
              Parejkoj John Parejko
              Reviewers:
              Jim Bosch
              Watchers:
              Jim Bosch, John Parejko, John Swinbank
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.