company logo

ObjectSpace :: resetVersion - Reser object space version

Resetting the version for an object space scope is supported for synchronized and objectspace versioning modes (also in combination with managed ). The function must not be called for versioning modes, which do not support the synchronized feature.

The function removes all database entries that belong to the object space with newer version numbers, i.e. version numbers greater or equal to uVersion , and recreates the state of the database entries for the previous version number ( uVersion -1) or older. One cannot reset version 0, i.e. The version number passed in uVersion has to be greater than 0 and lower than or equal to the last version number ( lastVersion() ). Passing 0xFFFFFFFF will reset the last version number set for the database.

When resetting object space versions for databases that supporting managed versioning feature, the major version of the version number passed has to be the last major version created for the database. In order to reset to older versions one may call resetMajorVersion() before.

After resetting a version one should close and reopen the object space.

When an invalid version number has been passed in uVersion or when the versioning mode does not support synchronized object space versions ( synchronized or objectspace ), the function throws an exception.

Notes:

The function is planned but not yet supported.

Implementation details

ObjectSpace  :: resetVersion ( uint32 uVersion )
  • uVersion - Instance version number

    Instance version numbers are assigned version numbers to individual instances.