
public abstract class OAbstractPaginatedStorage extends OStorageAbstract implements OLowDiskSpaceListener, OFullCheckpointRequestListener, OIdentifiableStorage, OOrientStartupListener, OOrientShutdownListener, OBackgroundExceptionListener, OPageIsBrokenListener
OStorage.LOCKING_STRATEGY, OStorage.SIZE, OStorage.STATUS| Modifier and Type | Field and Description |
|---|---|
protected OAtomicOperationsManager |
atomicOperationsManager |
protected OReadCache |
readCache |
protected OSBTreeCollectionManagerShared |
sbTreeCollectionManager |
protected OWriteAheadLog |
writeAheadLog |
protected OWriteCache |
writeCache |
componentsFactory, configuration, mode, name, sharedContainer, stateLock, status, storageThreadGroup, url, versionCLUSTER_DEFAULT_NAME| Constructor and Description |
|---|
OAbstractPaginatedStorage(String name,
String filePath,
String mode,
int id) |
| Modifier and Type | Method and Description |
|---|---|
void |
acquireReadLock(ORID rid) |
void |
acquireWriteLock(ORID rid) |
int |
addCluster(String clusterName,
boolean forceListBased,
Object... parameters)
Add a new cluster into the storage.
|
int |
addCluster(String clusterName,
int requestedId,
boolean forceListBased,
Object... parameters)
Add a new cluster into the storage.
|
protected abstract void |
addFileToDirectory(String name,
InputStream stream,
File directory) |
int |
addIndexEngine(String engineName,
String algorithm,
String indexType,
OIndexDefinition indexDefinition,
OBinarySerializer valueSerializer,
boolean isAutomatic,
Boolean durableInNonTxMode,
int version,
Map<String,String> engineProperties,
Set<String> clustersToIndex,
ODocument metadata) |
<T> T |
callIndexEngine(boolean atomicOperation,
boolean readOperation,
int indexId,
OIndexEngineCallback<T> callback) |
<V> V |
callInLock(Callable<V> iCallable,
boolean iExclusiveLock) |
void |
cancelIndexRebuild() |
OPhysicalPosition[] |
ceilingPhysicalPositions(int clusterId,
OPhysicalPosition physicalPosition) |
boolean |
check(boolean verbose,
OCommandOutputListener listener) |
int |
checkClustersConsistency() |
boolean |
checkForRecordValidity(OPhysicalPosition ppos) |
protected void |
checkOpeness()
Checks if the storage is open.
|
boolean |
cleanOutRecord(ORecordId recordId,
int recordVersion,
int iMode,
ORecordCallback<Boolean> callback) |
void |
clearIndex(int indexId) |
void |
clearProperties() |
protected void |
clearStorageDirty() |
void |
close(boolean force,
boolean onDelete) |
protected void |
closeClusters(boolean onDelete) |
protected void |
closeIndexes(boolean onDelete) |
Object |
command(OCommandRequestText iCommand)
Executes the command request and return the result back.
|
List<ORecordOperation> |
commit(OTransaction clientTx,
Runnable callback) |
void |
compactCluster(String clusterName) |
OSessionStoragePerformanceStatistic |
completeGatheringPerformanceStatisticForCurrentThread()
Completes gathering performance characteristics for current thread initiated by call of
startGatheringPerformanceStatisticForCurrentThread() |
protected abstract OLogSequenceNumber |
copyWALToIncrementalBackup(ZipOutputStream zipOutputStream,
long startSegment) |
long |
count(int iClusterId) |
long |
count(int[] iClusterIds) |
long |
count(int[] iClusterIds,
boolean countTombstones) |
long |
count(int clusterId,
boolean countTombstones) |
void |
create(Map<String,Object> iProperties) |
OStorageOperationResult<OPhysicalPosition> |
createRecord(ORecordId rid,
byte[] content,
int recordVersion,
byte recordType,
int mode,
ORecordCallback<Long> callback) |
protected abstract OWriteAheadLog |
createWalFromIBUFiles(File directory) |
protected abstract File |
createWalTempDirectory() |
void |
delete() |
void |
deleteIndexEngine(int indexId) |
OStorageOperationResult<Boolean> |
deleteRecord(ORecordId rid,
int version,
int mode,
ORecordCallback<Boolean> callback) |
boolean |
dropCluster(int clusterId,
boolean iTruncate)
Drops a cluster.
|
Object |
executeCommand(OCommandRequestText iCommand,
OCommandExecutor executor) |
OPhysicalPosition[] |
floorPhysicalPositions(int clusterId,
OPhysicalPosition physicalPosition) |
void |
freeze(boolean throwException) |
OAtomicOperationsManager |
getAtomicOperationsManager() |
OCluster |
getClusterById(int iClusterId) |
OCluster |
getClusterByName(String clusterName) |
long[] |
getClusterDataRange(int iClusterId)
Returns a pair of long values telling the begin and end positions of data in the requested cluster.
|
int |
getClusterIdByName(String clusterName) |
Set<OCluster> |
getClusterInstances() |
Set<String> |
getClusterNames() |
int |
getClusters() |
ORecordConflictStrategy |
getConflictStrategy() |
int |
getDefaultClusterId() |
long |
getFullCheckpointCount() |
int |
getId() |
OIndexCursor |
getIndexCursor(int indexId,
OIndexEngine.ValuesTransformer valuesTransformer) |
OIndexCursor |
getIndexDescCursor(int indexId,
OIndexEngine.ValuesTransformer valuesTransformer) |
OIndexEngine |
getIndexEngine(int indexId) |
Object |
getIndexFirstKey(int indexId) |
OIndexKeyCursor |
getIndexKeyCursor(int indexId) |
Object |
getIndexLastKey(int indexId) |
long |
getIndexSize(int indexId,
OIndexEngine.ValuesTransformer transformer) |
Object |
getIndexValue(int indexId,
Object key) |
OLogSequenceNumber |
getLSN() |
String |
getMode() |
OPerformanceStatisticManager |
getPerformanceStatisticManager() |
String |
getPhysicalClusterNameById(int iClusterId) |
OReadCache |
getReadCache() |
ORecordMetadata |
getRecordMetadata(ORID rid) |
AtomicLong |
getRecordScanned() |
OStorageRecoverListener |
getRecoverListener() |
protected Map<Integer,List<ORecordId>> |
getRidsGroupedByCluster(Collection<ORecordId> iRids) |
OSBTreeCollectionManager |
getSBtreeCollectionManager() |
long |
getSize()
Returns the size of the database.
|
OStorageTransaction |
getStorageTransaction() |
OWriteAheadLog |
getWALInstance() |
OWriteCache |
getWriteCache() |
boolean |
hasIndexRangeQuerySupport(int indexId) |
OStorageOperationResult<Boolean> |
hideRecord(ORecordId rid,
int mode,
ORecordCallback<Boolean> callback) |
OPhysicalPosition[] |
higherPhysicalPositions(int currentClusterId,
OPhysicalPosition physicalPosition) |
String |
incrementalBackup(String backupDirectory) |
boolean |
indexContainsKey(int indexId,
Object key) |
protected abstract void |
initWalAndDiskCache() |
boolean |
isClosed() |
protected boolean |
isDirty() |
boolean |
isFrozen() |
boolean |
isIndexRebuildScheduled() |
protected boolean |
isIndexRebuildScheduledInternal() |
boolean |
isRemote() |
protected abstract boolean |
isWriteAllowedDuringIncrementalBackup() |
OIndexCursor |
iterateIndexEntriesBetween(int indexId,
Object rangeFrom,
boolean fromInclusive,
Object rangeTo,
boolean toInclusive,
boolean ascSortOrder,
OIndexEngine.ValuesTransformer transformer) |
OIndexCursor |
iterateIndexEntriesMajor(int indexId,
Object fromKey,
boolean isInclusive,
boolean ascSortOrder,
OIndexEngine.ValuesTransformer transformer) |
OIndexCursor |
iterateIndexEntriesMinor(int indexId,
Object toKey,
boolean isInclusive,
boolean ascSortOrder,
OIndexEngine.ValuesTransformer transformer) |
int |
loadExternalIndexEngine(String engineName,
String algorithm,
String indexType,
OIndexDefinition indexDefinition,
OBinarySerializer valueSerializer,
boolean isAutomatic,
Boolean durableInNonTxMode,
int version,
Map<String,String> engineProperties) |
int |
loadIndexEngine(String name) |
protected Error |
logAndPrepareForRethrow(Error error) |
protected RuntimeException |
logAndPrepareForRethrow(RuntimeException runtimeException) |
protected RuntimeException |
logAndPrepareForRethrow(Throwable throwable) |
void |
lowDiskSpace(OLowDiskSpaceInformation information) |
OPhysicalPosition[] |
lowerPhysicalPositions(int currentClusterId,
OPhysicalPosition physicalPosition) |
protected void |
makeFullCheckpoint() |
protected void |
makeStorageDirty() |
void |
onException(Throwable e) |
void |
onShutdown() |
void |
onStartup() |
void |
open(OToken iToken,
Map<String,Object> iProperties) |
void |
open(String iUserName,
String iUserPassword,
Map<String,Object> iProperties) |
protected void |
openClusters() |
protected void |
openIndexes() |
void |
pageIsBroken(String fileName,
long pageIndex)
Method is called by write cache when it is detected that data page in file is broken.
|
protected abstract void |
postCloseSteps(boolean onDelete,
boolean jvmError) |
protected void |
postCreateSteps() |
protected void |
postDeleteSteps() |
protected void |
preCloseSteps() |
protected void |
preCreateSteps() |
protected void |
preOpenSteps() |
void |
putIndexValue(int indexId,
Object key,
Object value) |
OStorageOperationResult<ORawBuffer> |
readRecord(ORecordId iRid,
String iFetchPlan,
boolean iIgnoreCache,
boolean prefetchRecords,
ORecordCallback<ORawBuffer> iCallback) |
OStorageOperationResult<ORawBuffer> |
readRecordIfVersionIsNotLatest(ORecordId rid,
String fetchPlan,
boolean ignoreCache,
int recordVersion) |
Collection<OPair<ORecordId,ORawBuffer>> |
readRecords(Collection<ORecordId> iRids)
Returns the requested records.
|
OLogSequenceNumber |
recordsChangedAfterLSN(OLogSequenceNumber lsn,
OutputStream stream,
Set<String> includeClusterNames,
OCommandOutputListener outputListener)
This method finds all the records which were updated starting from (but not including) current LSN and write result in provided
output stream.
|
Set<ORecordId> |
recordsChangedRecently(int maxEntries,
Set<String> includeClusterNames)
This method finds all the records changed in the last X transactions.
|
void |
recyclePosition(ORecordId record,
byte[] content,
int recordVersion,
byte recordType)
Resurrects a record that was previously deleted.
|
void |
registerRecoverListener(OStorageRecoverListener recoverListener) |
void |
release() |
void |
releaseReadLock(ORID rid) |
void |
releaseWriteLock(ORID rid) |
void |
reload() |
boolean |
removeKeyFromIndex(int indexId,
Object key) |
void |
removeProperty(String property) |
void |
renameCluster(String oldName,
String newName)
Method that completes the cluster rename operation.
|
void |
requestCheckpoint() |
protected void |
restoreAtomicUnit(List<OWALRecord> atomicUnit,
OModifiableBoolean atLeastOnePageUpdate) |
protected OLogSequenceNumber |
restoreFrom(OLogSequenceNumber lsn,
OWriteAheadLog writeAheadLog) |
void |
restoreFromIncrementalBackup(String filePath) |
void |
rollback(OTransaction clientTx) |
protected void |
scheduleIndexRebuild() |
void |
setCharset(String charset) |
void |
setClusterSelection(String clusterSelection) |
boolean |
setClusterStatus(int clusterId,
OStorageClusterConfiguration.STATUS iStatus) |
void |
setConflictStrategy(ORecordConflictStrategy conflictResolver) |
void |
setDateFormat(String dateFormat) |
void |
setDateTimeFormat(String dateTimeFormat) |
void |
setDefaultClusterId(int defaultClusterId) |
void |
setIndexMgrRecordId(String indexMgrRecordId) |
void |
setLocaleCountry(String localeCountry) |
void |
setLocaleLanguage(String localeLanguage) |
void |
setMinimumClusters(int minimumClusters) |
void |
setProperty(String property,
String value) |
void |
setRecordSerializer(String recordSerializer,
int version) |
void |
setSchemaRecordId(String schemaRecordId) |
void |
setTimeZone(TimeZone timeZone) |
void |
setValidation(boolean validation) |
void |
startGatheringPerformanceStatisticForCurrentThread()
Starts to gather information about storage performance for current thread.
|
void |
synch() |
void |
underDistributedStorage()
This method is called by distributed storage during initialization to indicate that database is used in distributed cluster
configuration
|
void |
unregisterRecoverListener(OStorageRecoverListener recoverListener) |
void |
updateConfiguration() |
void |
updateIndexEntry(int indexId,
Object key,
Callable<Object> valueCreator) |
OStorageOperationResult<Integer> |
updateRecord(ORecordId rid,
boolean updateContent,
byte[] content,
int version,
byte recordType,
int mode,
ORecordCallback<Integer> callback) |
boolean |
validatedPutIndexValue(int indexId,
Object key,
OIdentifiable value,
OIndexEngine.Validator<Object,OIdentifiable> validator)
Puts the given value under the given key into this storage for the index with the given index id.
|
checkForClusterPermissions, close, countRecords, dropCluster, existsResource, getComponentsFactory, getConfiguration, getName, getResource, getStatus, getUnderlying, getURL, getVersion, isAssigningClusterIds, isDistributed, normalizeName, removeResource, shutdown, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcheckForClusterPermissions, close, countRecords, dropCluster, exists, getComponentsFactory, getConfiguration, getName, getStatus, getType, getUnderlying, getURL, getVersion, isAssigningClusterIds, isDistributed, shutdownbackup, restoreexistsResource, getResource, removeResourceprotected final OSBTreeCollectionManagerShared sbTreeCollectionManager
protected volatile OWriteAheadLog writeAheadLog
protected volatile OReadCache readCache
protected volatile OWriteCache writeCache
protected volatile OAtomicOperationsManager atomicOperationsManager
public void underDistributedStorage()
protected void openIndexes()
protected void openClusters()
throws IOException
IOExceptionpublic boolean isClosed()
isClosed in interface OStorageisClosed in class OStorageAbstractpublic void onShutdown()
onShutdown in interface OOrientShutdownListenerpublic void onStartup()
onStartup in interface OOrientStartupListenerpublic void close(boolean force,
boolean onDelete)
close in interface OStorageclose in class OStorageAbstractpublic boolean check(boolean verbose,
OCommandOutputListener listener)
public int addCluster(String clusterName, boolean forceListBased, Object... parameters)
OStorageaddCluster in interface OStorageclusterName - name of the clusterpublic void compactCluster(String clusterName)
public int addCluster(String clusterName, int requestedId, boolean forceListBased, Object... parameters)
OStorageaddCluster in interface OStorageclusterName - name of the clusterrequestedId - requested id of the clusterpublic boolean dropCluster(int clusterId,
boolean iTruncate)
OStoragedropCluster in interface OStorageclusterId - id of the cluster to deletepublic int getId()
getId in interface OIdentifiableStoragepublic boolean setClusterStatus(int clusterId,
OStorageClusterConfiguration.STATUS iStatus)
public OSBTreeCollectionManager getSBtreeCollectionManager()
getSBtreeCollectionManager in interface OStoragepublic OReadCache getReadCache()
public OWriteCache getWriteCache()
public long count(int clusterId,
boolean countTombstones)
public long[] getClusterDataRange(int iClusterId)
OStoragegetClusterDataRange in interface OStorageiClusterId - Cluster idpublic OLogSequenceNumber getLSN()
public OLogSequenceNumber recordsChangedAfterLSN(OLogSequenceNumber lsn, OutputStream stream, Set<String> includeClusterNames, OCommandOutputListener outputListener)
lsn - LSN from which we should find changed recordsstream - Stream which will contain found recordsincludeClusterNames - Array of cluster ids to include from the exportnull if it was impossible to find changed
records: write ahead log is absent, record with start LSN was not found in WAL, etc.OGlobalConfiguration.STORAGE_TRACK_CHANGED_RECORDS_IN_WALpublic Set<ORecordId> recordsChangedRecently(int maxEntries, Set<String> includeClusterNames)
maxEntries - Maximum number of entries to check back from last log.OGlobalConfiguration.STORAGE_TRACK_CHANGED_RECORDS_IN_WALpublic long count(int[] iClusterIds,
boolean countTombstones)
public OStorageOperationResult<OPhysicalPosition> createRecord(ORecordId rid, byte[] content, int recordVersion, byte recordType, int mode, ORecordCallback<Long> callback)
createRecord in interface OStoragepublic ORecordMetadata getRecordMetadata(ORID rid)
getRecordMetadata in interface OStoragepublic OStorageOperationResult<ORawBuffer> readRecord(ORecordId iRid, String iFetchPlan, boolean iIgnoreCache, boolean prefetchRecords, ORecordCallback<ORawBuffer> iCallback)
readRecord in interface OStoragepublic OStorageOperationResult<ORawBuffer> readRecordIfVersionIsNotLatest(ORecordId rid, String fetchPlan, boolean ignoreCache, int recordVersion) throws ORecordNotFoundException
readRecordIfVersionIsNotLatest in interface OStorageORecordNotFoundExceptionpublic OStorageOperationResult<Integer> updateRecord(ORecordId rid, boolean updateContent, byte[] content, int version, byte recordType, int mode, ORecordCallback<Integer> callback)
updateRecord in interface OStoragepublic void recyclePosition(ORecordId record, byte[] content, int recordVersion, byte recordType)
OStoragerecyclePosition in interface OStoragepublic OStorageTransaction getStorageTransaction()
public OAtomicOperationsManager getAtomicOperationsManager()
public OWriteAheadLog getWALInstance()
public OStorageOperationResult<Boolean> deleteRecord(ORecordId rid, int version, int mode, ORecordCallback<Boolean> callback)
deleteRecord in interface OStoragepublic OStorageOperationResult<Boolean> hideRecord(ORecordId rid, int mode, ORecordCallback<Boolean> callback)
hideRecord in interface OStoragepublic OPerformanceStatisticManager getPerformanceStatisticManager()
public void startGatheringPerformanceStatisticForCurrentThread()
OSessionStoragePerformanceStatistic.public OSessionStoragePerformanceStatistic completeGatheringPerformanceStatisticForCurrentThread()
startGatheringPerformanceStatisticForCurrentThread()startGatheringPerformanceStatisticForCurrentThread() or
null if profiling of storage was not started.public <V> V callInLock(Callable<V> iCallable, boolean iExclusiveLock)
callInLock in interface OStoragecallInLock in class OStorageAbstractpublic Set<String> getClusterNames()
getClusterNames in interface OStoragepublic int getClusterIdByName(String clusterName)
getClusterIdByName in interface OStoragepublic List<ORecordOperation> commit(OTransaction clientTx, Runnable callback)
public int loadIndexEngine(String name)
public int loadExternalIndexEngine(String engineName, String algorithm, String indexType, OIndexDefinition indexDefinition, OBinarySerializer valueSerializer, boolean isAutomatic, Boolean durableInNonTxMode, int version, Map<String,String> engineProperties)
public int addIndexEngine(String engineName, String algorithm, String indexType, OIndexDefinition indexDefinition, OBinarySerializer valueSerializer, boolean isAutomatic, Boolean durableInNonTxMode, int version, Map<String,String> engineProperties, Set<String> clustersToIndex, ODocument metadata)
public void deleteIndexEngine(int indexId)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic boolean indexContainsKey(int indexId,
Object key)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic boolean removeKeyFromIndex(int indexId,
Object key)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic void clearIndex(int indexId)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic Object getIndexValue(int indexId, Object key) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic OIndexEngine getIndexEngine(int indexId) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic void updateIndexEntry(int indexId,
Object key,
Callable<Object> valueCreator)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic <T> T callIndexEngine(boolean atomicOperation,
boolean readOperation,
int indexId,
OIndexEngineCallback<T> callback)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic void putIndexValue(int indexId,
Object key,
Object value)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic boolean validatedPutIndexValue(int indexId,
Object key,
OIdentifiable value,
OIndexEngine.Validator<Object,OIdentifiable> validator)
throws OInvalidIndexEngineIdException
indexId - the index id of the index to put the value into.key - the key to put the value under.value - the value to put.validator - the operation validator.true if the validator allowed the put, false otherwise.OInvalidIndexEngineIdExceptionOIndexEngine.Validator#validate(Object, Object, Object)public Object getIndexFirstKey(int indexId) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic Object getIndexLastKey(int indexId) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic OIndexCursor iterateIndexEntriesBetween(int indexId, Object rangeFrom, boolean fromInclusive, Object rangeTo, boolean toInclusive, boolean ascSortOrder, OIndexEngine.ValuesTransformer transformer) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic OIndexCursor iterateIndexEntriesMajor(int indexId, Object fromKey, boolean isInclusive, boolean ascSortOrder, OIndexEngine.ValuesTransformer transformer) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic OIndexCursor iterateIndexEntriesMinor(int indexId, Object toKey, boolean isInclusive, boolean ascSortOrder, OIndexEngine.ValuesTransformer transformer) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic OIndexCursor getIndexCursor(int indexId, OIndexEngine.ValuesTransformer valuesTransformer) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic OIndexCursor getIndexDescCursor(int indexId, OIndexEngine.ValuesTransformer valuesTransformer) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic OIndexKeyCursor getIndexKeyCursor(int indexId) throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic long getIndexSize(int indexId,
OIndexEngine.ValuesTransformer transformer)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic boolean hasIndexRangeQuerySupport(int indexId)
throws OInvalidIndexEngineIdException
OInvalidIndexEngineIdExceptionpublic void rollback(OTransaction clientTx)
public boolean checkForRecordValidity(OPhysicalPosition ppos)
checkForRecordValidity in interface OStoragecheckForRecordValidity in class OStorageAbstractpublic String getPhysicalClusterNameById(int iClusterId)
getPhysicalClusterNameById in interface OStoragepublic int getDefaultClusterId()
getDefaultClusterId in interface OStoragepublic void setDefaultClusterId(int defaultClusterId)
setDefaultClusterId in interface OStoragepublic OCluster getClusterById(int iClusterId)
getClusterById in interface OStoragepublic OCluster getClusterByName(String clusterName)
getClusterByName in interface OStoragegetClusterByName in class OStorageAbstractpublic long getSize()
OStoragepublic int getClusters()
getClusters in interface OStoragepublic Set<OCluster> getClusterInstances()
getClusterInstances in interface OStoragepublic void renameCluster(String oldName, String newName)
public boolean cleanOutRecord(ORecordId recordId, int recordVersion, int iMode, ORecordCallback<Boolean> callback)
cleanOutRecord in interface OStoragepublic boolean isFrozen()
public void freeze(boolean throwException)
public void release()
public String getMode()
public void lowDiskSpace(OLowDiskSpaceInformation information)
lowDiskSpace in interface OLowDiskSpaceListenerpublic void pageIsBroken(String fileName, long pageIndex)
OPageIsBrokenListenerpageIsBroken in interface OPageIsBrokenListenerfileName - Name of broken file.pageIndex - Index of page which is broken in file.public void requestCheckpoint()
requestCheckpoint in interface OFullCheckpointRequestListenerpublic Object command(OCommandRequestText iCommand)
public Object executeCommand(OCommandRequestText iCommand, OCommandExecutor executor)
public OPhysicalPosition[] higherPhysicalPositions(int currentClusterId, OPhysicalPosition physicalPosition)
higherPhysicalPositions in interface OStoragepublic OPhysicalPosition[] ceilingPhysicalPositions(int clusterId, OPhysicalPosition physicalPosition)
ceilingPhysicalPositions in interface OStoragepublic OPhysicalPosition[] lowerPhysicalPositions(int currentClusterId, OPhysicalPosition physicalPosition)
lowerPhysicalPositions in interface OStoragepublic OPhysicalPosition[] floorPhysicalPositions(int clusterId, OPhysicalPosition physicalPosition)
floorPhysicalPositions in interface OStoragepublic void acquireWriteLock(ORID rid)
public void releaseWriteLock(ORID rid)
public void acquireReadLock(ORID rid)
public void releaseReadLock(ORID rid)
public ORecordConflictStrategy getConflictStrategy()
getConflictStrategy in interface OStoragepublic void setConflictStrategy(ORecordConflictStrategy conflictResolver)
setConflictStrategy in interface OStorageprotected abstract OLogSequenceNumber copyWALToIncrementalBackup(ZipOutputStream zipOutputStream, long startSegment) throws IOException
IOExceptionprotected abstract boolean isWriteAllowedDuringIncrementalBackup()
public OStorageRecoverListener getRecoverListener()
public void registerRecoverListener(OStorageRecoverListener recoverListener)
public void unregisterRecoverListener(OStorageRecoverListener recoverListener)
protected abstract File createWalTempDirectory()
protected abstract void addFileToDirectory(String name, InputStream stream, File directory) throws IOException
IOExceptionprotected abstract OWriteAheadLog createWalFromIBUFiles(File directory) throws IOException
IOExceptionprotected void checkOpeness()
protected void makeFullCheckpoint()
throws IOException
IOExceptionpublic long getFullCheckpointCount()
protected void preOpenSteps()
throws IOException
IOExceptionprotected void postCreateSteps()
protected void preCreateSteps()
throws IOException
IOExceptionprotected abstract void initWalAndDiskCache()
throws IOException
IOExceptionprotected abstract void postCloseSteps(boolean onDelete,
boolean jvmError)
throws IOException
IOExceptionprotected void preCloseSteps()
throws IOException
IOExceptionprotected void postDeleteSteps()
protected void makeStorageDirty()
throws IOException
IOExceptionprotected void clearStorageDirty()
throws IOException
IOExceptionprotected boolean isDirty()
throws IOException
IOExceptionpublic boolean isIndexRebuildScheduled()
protected boolean isIndexRebuildScheduledInternal()
protected void scheduleIndexRebuild()
throws IOException
IOExceptionpublic void cancelIndexRebuild()
throws IOException
IOExceptionpublic Collection<OPair<ORecordId,ORawBuffer>> readRecords(Collection<ORecordId> iRids)
iRids - Set of rids to load in one shotpublic int checkClustersConsistency()
public void onException(Throwable e)
onException in interface OBackgroundExceptionListenerprotected void closeClusters(boolean onDelete)
throws IOException
IOExceptionprotected void closeIndexes(boolean onDelete)
public String incrementalBackup(String backupDirectory)
incrementalBackup in interface OStoragepublic void restoreFromIncrementalBackup(String filePath)
restoreFromIncrementalBackup in interface OStorageprotected OLogSequenceNumber restoreFrom(OLogSequenceNumber lsn, OWriteAheadLog writeAheadLog) throws IOException
IOExceptionprotected void restoreAtomicUnit(List<OWALRecord> atomicUnit, OModifiableBoolean atLeastOnePageUpdate) throws IOException
IOExceptionprotected Map<Integer,List<ORecordId>> getRidsGroupedByCluster(Collection<ORecordId> iRids)
public AtomicLong getRecordScanned()
protected RuntimeException logAndPrepareForRethrow(RuntimeException runtimeException)
protected RuntimeException logAndPrepareForRethrow(Throwable throwable)
public void updateConfiguration()
updateConfiguration in interface OStoragepublic void setRecordSerializer(String recordSerializer, int version)
setRecordSerializer in interface OStoragepublic void setProperty(String property, String value)
setProperty in interface OStoragepublic void setDateFormat(String dateFormat)
setDateFormat in interface OStoragepublic void setDateTimeFormat(String dateTimeFormat)
setDateTimeFormat in interface OStoragepublic void setTimeZone(TimeZone timeZone)
setTimeZone in interface OStoragepublic void setLocaleCountry(String localeCountry)
setLocaleCountry in interface OStoragepublic void setLocaleLanguage(String localeLanguage)
setLocaleLanguage in interface OStoragepublic void setCharset(String charset)
setCharset in interface OStoragepublic void setClusterSelection(String clusterSelection)
setClusterSelection in interface OStoragepublic void setMinimumClusters(int minimumClusters)
setMinimumClusters in interface OStoragepublic void setValidation(boolean validation)
setValidation in interface OStoragepublic void clearProperties()
clearProperties in interface OStoragepublic void removeProperty(String property)
removeProperty in interface OStoragepublic void setSchemaRecordId(String schemaRecordId)
setSchemaRecordId in interface OStoragepublic void setIndexMgrRecordId(String indexMgrRecordId)
setIndexMgrRecordId in interface OStorageCopyright © 2009–2025 OrientDB. All rights reserved.