SAP NetWeaver AS ABAP Release 740, ©Copyright 2014 SAP AG. All rights reserved.
ABAP Keyword Documentation →
ABAP − Reference →
Creating Objects and Values →
Shared Objects →
Shared Objects - Area Instance Versions →
Shared Objects - States of Area Instance Versions
Area instance versions can have the following states.
-
"Building"
-
An area instance version that has a change lock is being built. Change locks automatically create a building version.
-
"Active"
-
The area instance version whose build or update was last released using the
DETACH_COMMIT method (and a database commit in the case of transactional areas) is active. All read locks are automatically set to the current active version.
-
"Obsolete"
-
If during read access to the currently active version of the build, a new version becomes complete, the new version becomes active and the version that was previously active becomes obsolete. The
read locks on the obsolete version remain until the read process is complete; new read locks for the area instance are always set on the active version, however.
-
"Expired"
-
Once the last read lock on an obsolete version is removed, the version expires; that is, it is deleted
by the garbage collector. No locks can be set on expired versions and they are not considered when the version number is determined.
In an area without area instance versioning, there is always only one area instance version, which is
available in one of the states mentioned above. In an area with versioning, there can be different states in an area instance at the same time:
- Since there can be a maximum of one change lock on an area instance, there is a maximum of one building version for each area instance at any given time.
- There is a maximum of one active version for each area instance.
- Depending on the maximum version number, several obsolete versions can exist in parallel.
Note
If there are a large number of obsolete area instance versions for an area that still have read locks, but there is an updated version in an active state, this can indicate a problem with the use of shared objects.
Example
In a simple case with a maximum of two version, there can be a maximum of:
- One active version and one building version
- One active version and one obsolete version
- One building version and one obsolete version