SDE - Version the Metadata and/or prevent Metadata of Default from getting updated while working on a Version.

Idea created by cdspatial Champion on Feb 3, 2015
    New
    Score40
    • cdspatial
    • aewilson
    • hiker4k
    • rchasan
    Issue:

    The way SDE is currently set up, when one works on a Version, the Metadata of Default is being updated with changes made to the Version IMMEDIATELY.  Their is no delay until Reconcile and Post, instead the changes are implemented instanteously by any changes made to the Version(s).  This process is a bit insiduous - there is no indicator that warns a Version user that they are immediately impacting Default.  

    These changes to the Metadata of Default include both manual entries made by the Version user and the automated geoprocessing logs.  If you have several people working on Versions from the same Feature Class, the metadata will likely soon be bizarrely different from the data it describes (before Reconcile and Post).

    Many people are not aware of this, but when you make a Version of an SDE Feature Class, the Metadata is NOT likewised versioned.  No matter how many Versions of an SDE Feature Class you have, there is only one metadata file for that Feature Class.


    So why is this a problem?

    The metadata of Default no longer matches the data it describes once a Version is operated on.  Also, the instantaneous update bypasses any review checks (typically done at Reconcile).  These are violations of the concept of Data Integrity.

    The impacts of this range from confusion on the part of a user who taps the Default Feature Class and sees the mismatch, to in the case of critical data, potential liability.


    Solution proposed:

    First, do not allow the Default Metadata to be changed until Post.   Second, make it so each Version has its own Metadata associated with it.  Third, put this "Version Metadata" into the Reconcile process in a way that only the accepted changes to the Version result in the corresponding bits of metadata being updated to Default (at Post).

    Anyways, that's the idea.  I'm sure it is more easily stated than done (particularly the third part).


    Chris Donohue, GISP