@Override // Storage  
  protected void setFields(Properties props, StorageDirectory sd)
      throws IOException {
    super.setFields(props, sd);
    boolean uState = getDistributedUpgradeState();
    int uVersion = getDistributedUpgradeVersion();
    if (uState && uVersion != getLayoutVersion()) {
      props.setProperty("distributedUpgradeState", Boolean.toString(uState));
      props
          .setProperty("distributedUpgradeVersion", Integer.toString(uVersion));
    }
  }
@ Override protected void setFields ( Properties props , StorageDirectory sd ) throws IOException { super . setFields ( props , sd ) ; boolean uState = getDistributedUpgradeState ( ) ; int uVersion = getDistributedUpgradeVersion ( ) ; if ( uState && uVersion != getLayoutVersion ( ) ) { props . setProperty ( "distributedUpgradeState" , Boolean . toString ( uState ) ) ; props . setProperty ( "distributedUpgradeVersion" , Integer . toString ( uVersion ) ) ; } }
Write version file into the storage directory.

The version file should always be written last.
Missing or corrupted version file indicates that
the checkpoint is not valid.

@param sd storage directory
@throws IOException