Interface ITransactionalMultiVersion
- All Superinterfaces:
IMultiVersion,IMultiVersionOperations
- All Known Subinterfaces:
IAsyncTransactionalMultiVersion,IMultiVersionActivePivot,IMultiVersionAggregateProvider,IMultiVersionAggregateProviderHolder,IMultiVersionAxisHierarchy,IMultiVersionConcreteReference,IMultiVersionCube,IMultiVersionDataActivePivot,IMultiVersionDistributedActivePivot,IMultiVersionDistributedAxisHierarchy,IMultiVersionDistributedHierarchy,IMultiVersionDistributedMeasureHierarchy,IMultiVersionGlobalAggregateProvider,IMultiVersionHierarchy,IMultiVersionIndex,IMultiVersionIntegerArray,IMultiVersionLongArray,IMultiVersionMeasureHierarchy,IMultiVersionRecordIndex,IMultiVersionRecordSet,IMultiVersionSecondaryRecordIndex,IMultiVersionStore,IMultiVersionStorePartition,IMultiVersionUniqueRecordIndex
- All Known Implementing Classes:
AAnalysisHierarchy,AAnalysisHierarchyV2,AAsyncTransactionalMultiVersion,ABucketHierarchy,AMultiVersionAggregateProvider,AMultiVersionAnalysisHierarchy,AMultiVersionAxisHierarchy,AMultiVersionConcreteReference,AMultiVersionGlobalAggregateProvider,AMultiVersionIndexedAggregateProvider,AMultiVersionPartitionedAggregateProvider,AMultiVersionPartitionedIndexedAggregateProvider,AMultiVersionSecondaryRecordIndex,AMultiVersionUniqueRecordIndex,ATransactionalMultiVersion,CalculatedMemberTrivialAnalysisHierarchy,DistributedAggregateProvider,DistributedMultiVersionAggregateProviderHolder,DummyAggregateProvider,MultiVersionActivePivot,MultiVersionAggregateProviderHolder,MultiVersionAxisHierarchy,MultiVersionBitmapAggregateProvider,MultiVersionColumnarRecordSet,MultiVersionCompositeSecondaryRecordIndex,MultiVersionCompositeUniqueRecordIndex,MultiVersionCube,MultiVersionDataActivePivot,MultiVersionDistributedActivePivot,MultiVersionDistributedAxisHierarchy,MultiVersionDistributedMeasureHierarchy,MultiVersionIntegerArray,MultiVersionLazyDeleteLinkedIndex,MultiVersionLeafAggregateProvider,MultiVersionLongArray,MultiVersionMeasureHierarchy,MultiVersionNoIndexConcreteReference,MultiVersionPartitionedBitmapAggregateProvider,MultiVersionPartitionedLeafAggregateProvider,MultiVersionSecondaryConcreteReference,MultiVersionSecondaryRecordIndex,MultiVersionStore,MultiVersionStorePartition,MultiVersionUniqueConcreteReference,MultiVersionUniqueRecordIndex,TimeBucketHierarchy
Exposes and maintains several concurrent versions of one underlying component, each of those versions is uniquely associated to the epoch that created it.
Multiversion components may allow modifications of the underlying component, those modifications are considered pending and invisible until they are committed. When the changes are committed, a new version of the underlying component is created.
- Author:
- ActiveViam
-
Method Summary
Modifier and TypeMethodDescriptionReturns the current transaction.voidrollback()Rolls back the changes that have been written in the transient state.Methods inherited from interface com.qfs.multiversion.IMultiVersion
getMostRecentVersionMethods inherited from interface com.qfs.multiversion.IMultiVersionOperations
commit
-
Method Details
-
getTransaction
ITransaction getTransaction()Returns the current transaction.- Returns:
- the current transaction or
nullwhen there is no transaction - See Also:
-
getOrCreateTransaction
ITransaction getOrCreateTransaction()Returns the current transaction.
The result is nevernullcontrary togetTransaction().THIS METHOD SHOULD BE CALLED ONLY IF
IMultiVersionOperations.commit(IEpoch)(orrollback()) IS GUARANTEED TO BE CALLED otherwise this could cause a memory leak if the transaction holds a version (because the multiversion will keep the transaction).- Returns:
- the current transaction
- See Also:
-
rollback
void rollback()Rolls back the changes that have been written in the transient state.Thread-safety: unless specific otherwise by the implementing class, it is not thread-safe to call
IMultiVersionOperations.commit(IEpoch)andIMultiVersionOperations.rollback()concurrently.After this call
getTransaction(), should returnnull.- Specified by:
rollbackin interfaceIMultiVersionOperations- See Also:
-