public class Journal extends AbstractJournal implements IConcurrencyManager, IResourceManager
 Note: This implementation does NOT not support partitioned indices. Because
 all data must reside on a single journal resource there is no point to a
 view. Views are designed to have data on a mixture of the live journal, one
 or more historical journals, and one or more IndexSegments.
ResourceManager, which supports views.| Modifier and Type | Class and Description | 
|---|---|
| static interface  | Journal.IJournalCountersInterface defines and documents the counters and counter namespaces
 reported by the  Journaland the various services which it uses. | 
| static interface  | Journal.OptionsOptions understood by the  Journal. | 
AbstractJournal.BasicHA, AbstractJournal.ISnapshotData, AbstractJournal.ISnapshotEntry, AbstractJournal.SnapshotDataDELETEBLOCK, deleteOnClose, doubleSync, forceOnCommit, haLog, PREV_ROOTBLOCK, properties, ROOT_ICUVERSION, ROOT_NAME2ADDR, tmpDirNULL| Constructor and Description | 
|---|
| Journal(Properties properties)Create or re-open a journal. | 
| Journal(Properties properties,
       Quorum<HAGlue,QuorumService<HAGlue>> quorum) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | _close()Core implementation of immediate shutdown handles event reporting. | 
| void | abort(long tx)Abort a transaction. | 
| AccessSemaphore.Access | acquireReadWriteConnectionAccess()Acquire an Access for a read/write isolated transaction. | 
| AccessSemaphore.Access | acquireUnisolatedConnectionAccess()Acquire an Access object for the UNISOLATED connection. | 
| ScheduledFuture<?> | addScheduledTask(Runnable task,
                long initialDelay,
                long delay,
                TimeUnit unit)Adds a task which will run until canceled, until it throws an exception,
 or until the service is shutdown. | 
| long | commit(long tx)Commit a transaction. | 
| Future<Journal> | compact(File outFile)Compacts the named indices found on this journal as of the most recent
 commit point, writing their view onto a new Journal. | 
| protected void | discardCommitters()This method is invoked by  AbstractJournal.abort()when the store must discard
 any hard references that it may be holding to objects registered asICommitters. | 
| void | dropIndex(String name)Drops the named index. | 
| boolean | getCollectPlatformStatistics()trueiff performance counters will be collected for the
 platform on which the client is running. | 
| boolean | getCollectQueueStatistics()trueiff statistics will be collected for work queues. | 
| ConcurrencyManager | getConcurrencyManager() | 
| CounterSet | getCounters()Return counters reporting on various aspects of the journal. | 
| File | getDataDir()The directory in which the journal's file is located -or-
  nullif the journal is not backed by a file. | 
| DataService | getDataService()The local  DataServicewhose resources are being managed. | 
| UUID | getDataServiceUUID()Return the  UUIDof theIDataServicewhose resources are
 being managed. | 
| ExecutorService | getExecutorService()Service for running arbitrary tasks in support of
  IResourceLocator. | 
| IBigdataFederation<?> | getFederation()The federation whose resources are being managed. | 
| Object | getGangliaService() | 
| BigdataFileSystem | getGlobalFileSystem()Return the global file system used to store block-structured files and
 their metadata and as a source and sink for map/reduce processing. | 
| SparseRowStore | getGlobalRowStore()Return an unisolated view of the global  SparseRowStoreused to
 store named property sets. | 
| SparseRowStore | getGlobalRowStore(long timestamp)Return a view of the global  SparseRowStoreused to store named
 property sets as of the specified timestamp. | 
| int | getHttpdPort()The port on which the optional httpd service will be run. | 
| ILocalBTreeView | getIndex(String name,
        long timestamp)Return a view of the named index as of the specified timestamp. | 
| BTreeCounters | getIndexCounters(String name)Return the  BTreeCountersfor the named index. | 
| StaleLocatorReason | getIndexPartitionGone(String name)Always returns  nullsince index partition moves are not
 supported. | 
| File | getIndexSegmentFile(IndexMetadata indexMetadata)Return the file on which a new  IndexSegmentshould be written. | 
| AbstractBTree[] | getIndexSources(String name,
               long timestamp)Always returns an array containing a single  BTreewhich is theBTreeloaded from the commit record whose commit timestamp is
 less than or equal to timestamp -or-nullif there
 are noICommitRecords that satisfy the probe or if the named
 index was not registered as of that timestamp. | 
| AbstractBTree[] | getIndexSources(String name,
               long timestamp,
               BTree btree)Always returns the  BTreeas the sole element of the array since
 partitioned indices are not supported. | 
| AbstractJournal | getJournal(long timestamp)Always returns this. | 
| AbstractJournal | getLiveJournal()Always returns this. | 
| AbstractLocalTransactionManager | getLocalTransactionManager()Return the object providing the local transaction manager for this
 journal. | 
| AbstractStatisticsCollector | getPlatformStatisticsCollector()Host wide performance counters (collected from the OS) (optional). | 
| LatchedExecutor | getReadExecutor()An executor service used to read on the local disk. | 
| IResourceLocator<?> | getResourceLocator()Return the default locator for resources that are logical index
 containers (relations and relation containers). | 
| IResourceLockService | getResourceLockService()The service that may be used to acquire synchronous distributed locks
 without deadlock detection. | 
| IResourceManager | getResourceManager()The object used to manage local resources. | 
| TemporaryStore | getTempStore()A factory for  TemporaryStores. | 
| File | getTmpDir()The directory for temporary files. | 
| ILocalTransactionManager | getTransactionManager()The client side of the transaction manager. | 
| ITransactionService | getTransactionService() | 
| WriteExecutorService | getWriteService()The service on which read-write tasks are executed. | 
| <T> List<Future<T>> | invokeAll(Collection<? extends AbstractTask<T>> tasks)Executes the given tasks, returning a list of Futures holding their
 status and results when all complete. | 
| <T> List<Future<T>> | invokeAll(Collection<? extends AbstractTask<T>> tasks,
         long timeout,
         TimeUnit unit)Executes the given tasks, returning a list of Futures holding their
 status and results when all complete or the timeout expires, whichever
 happens first. | 
| boolean | isGroupCommit()Return true if the index manager supports group commit semantics. | 
| boolean | isHAJournal()Convenience method created in BLZG-1370 to factor out bigdata-jini
 artifact dependencies. | 
| boolean | isOverflowEnabled()Note: This implementation always returns  false. | 
| protected AbstractLocalTransactionManager | newLocalTransactionManager() | 
| protected IResourceLocator<?> | newResourceLocator()Factory for the  IResourceLocatorfor theJournal. | 
| protected JournalTransactionService | newTransactionService() | 
| long | newTx(long timestamp)Create a new transaction on the  Journal. | 
| long | nextTimestamp()Deprecated. 
 This is here for historical reasons and is only used by the
             test suite. Use  getLocalTransactionManager()andITimestampService.nextTimestamp(). | 
| IRawStore | openStore(UUID uuid)Note: This will only succeed if the uuid identifies this
 journal. | 
| Future<Object> | overflow()Overflow processing creates a new journal, migrates the named indices on
 the current journal the new journal, and continues operations on the new
 journal. | 
| boolean | prepare(long txId)Validate the write set for a transaction. | 
| boolean | shouldOverflow()Note: This implementation always returns  false. | 
| void | shutdown()Note: The transaction service is shutdown first, then the
  executorService, then theIConcurrencyManager, theITransactionServiceand finally theIResourceLockService. | 
| void | shutdownNow()Note: The  IConcurrencyManageris shutdown first, then theITransactionServiceand finally theIResourceManager. | 
| Future<ISnapshotResult> | snapshot(ISnapshotFactory snapshotFactory)Submit a task that will take a snapshot of the journal and return the
  Futurefor that task. | 
| <T> FutureTask<T> | submit(AbstractTask<T> task)Submit a task (asynchronous). | 
| Future<Map<String,BaseIndexStats>> | warmUp(List<String> namespaces)Warmup the indicated namespaces. | 
_getName2Addr, abort, abortContext, assertBefore, assertCanRead, assertCanWrite, assertCommitTimeAdvances, assertHAReady, assertOpen, assertPriorCommitTimeAdvances, awaitHAReady, clearQuorumToken, close, closeForWrites, commit, commitNow, delete, delete, deleteResources, destroy, detachContext, doLocalAbort, doLocalCommit, doLocalCommit, ensureMinFree, finalize, force, getBufferStrategy, getByteCount, getCommitRecord, getCommitRecord, getCommitRecordIndex, getCommitRecordStrictlyGreaterThan, getEarliestVisibleCommitRecordForHA, getFile, getHAPrepareTimeout, getHAReady, getHAReleaseTimeConsensusTimeout, getHAStatus, getHistoricalIndexCacheSize, getIndex, getIndexCacheSize, getIndexCounters, getIndexLocal, getIndexWithCheckpointAddr, getIndexWithCommitRecord, getInputStream, getLastCommitTime, getMaximumClockSkewMillis, getMaximumExtent, getMaxRecordSize, getName2Addr, getName2Addr, getOffset, getOffsetBits, getOutputStream, getOutputStream, getPhysicalAddress, getProperties, getProperty, getProperty, getProperty, getQuorum, getQuorumToken, getReadOnlyCommitRecordIndex, getResourceMetadata, getRootAddr, getRootBlocks, getRootBlockView, getRootBlockViewWithLock, getUnisolatedIndex, getUUID, indexNameScan, installRootBlocks, invalidateCommitters, isChecked, isDirty, isDoubleSync, isFullyBuffered, isOpen, isReadOnly, isStable, newAllocationContext, newHAGlue, read, register, registerIndex, registerIndex, registerIndex, registerIndex, removeCommitRecordEntries, rollback, setCommitter, setQuorumToken, setupCommitters, size, snapshotAllocationData, toAddr, toString, truncate, validateIndexMetadata, write, writeclone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdeleteResourcesisOpenpublic Journal(Properties properties)
properties - See Options.public Journal(Properties properties, Quorum<HAGlue,QuorumService<HAGlue>> quorum)
protected IResourceLocator<?> newResourceLocator()
IResourceLocator for the Journal.protected JournalTransactionService newTransactionService()
protected AbstractLocalTransactionManager newLocalTransactionManager()
public AbstractLocalTransactionManager getLocalTransactionManager()
IJournalgetLocalTransactionManager in interface IJournalpublic boolean isGroupCommit()
IIndexManagerisGroupCommit in interface IIndexManager(NSS GROUP COMMIT)public CounterSet getCounters()
Overridden to attach additional performance counters.
getCounters in interface ICounterSetAccessgetCounters in interface IResourceManagergetCounters in class AbstractJournalpublic File getTmpDir()
IResourceManagergetTmpDir in interface IResourceManagerpublic File getDataDir()
null if the journal is not backed by a file.getDataDir in interface IResourceManagerpublic IRawStore openStore(UUID uuid)
openStore in interface IResourceManageruuid - The UUID identifying that store file.IRawStore.public AbstractBTree[] getIndexSources(String name, long timestamp)
BTree which is the
 BTree loaded from the commit record whose commit timestamp is
 less than or equal to timestamp -or- null if there
 are no ICommitRecords that satisfy the probe or if the named
 index was not registered as of that timestamp.getIndexSources in interface IResourceManagername - timestamp - null if the
         index was not defined as of the timestamp.UnsupportedOperationException - If the timestamp is ITx.READ_COMMITTED. You
             MUST use getIndex(String, long) in order to obtain a
             view that has ITx.READ_COMMITTED semantics.FusedViewpublic final AbstractJournal getLiveJournal()
getLiveJournal in interface IResourceManagerpublic final AbstractJournal getJournal(long timestamp)
getJournal in interface IResourceManagertimestamp - A transaction identifier, ITx.UNISOLATED for the
            unisolated index view, ITx.READ_COMMITTED, or
            timestamp for a historical view no later than
            the specified timestamp.null if no journal has data for that timestamp,
         including when a historical journal with data for that timestamp
         has been deleted.public Future<Journal> compact(File outFile)
Journal but writes after the selected
 commit point WILL NOT be reflected in the output file. Typical uses are
 to reduce the space required by the backing store, to improve locality in
 the backing store, and to make a backup of the most recent commit point.outFile - The file on which the new journal will be created.Future on which you must wait
         for the CompactTask to complete. The already open journal
         is accessible using Future.get(). If you are backing up
         data, then be sure to shutdown the returned Journal so
         that it can release its resources.public Future<ISnapshotResult> snapshot(ISnapshotFactory snapshotFactory)
Future for that task. The snapshot is taken on a temporary file.
 Iff the snapshot is successful, the temporary file is renamed to the
 application determined file. Thus all snapshots are either valid or are
 were not written. A snapshot of an empty journal is not permitted. Also,
 the backing store MUST implement the IHABufferStrategy.
 Note: This method supports application controlled snapshots and is primarily intended for non-HA deployments. HA has an integrated snapshot and transaction log mechanism which is preferred in HA deployments and also provides the ability for an application to take snapshots on demand.
snapshotFactory - The factory that will provide the name of the file on which the
           snapshot will be written.Future for the snapshot.UnsupportedOperationException - if the backing store does not implement the
            IHABufferStrategy interface.public void dropIndex(String name)
AbstractJournalNote: Whether or not and when index resources are reclaimed is dependent on the store. For example, an immortal store will retain all historical states for all indices. Likewise, a store that uses index partitions may be able to delete index segments immediately.
Drops the named index. The index will no longer participate in atomic commits and will not be visible to new transactions. Storage will be reclaimed IFF the backing store support that functionality.
dropIndex in interface IGISTManagerdropIndex in class AbstractJournalname - The name of the index to be dropped.public ILocalBTreeView getIndex(String name, long timestamp)
 Note: Transactions should pass in the timestamp against which they are
 reading rather than the transaction identifier (aka startTime). By
 providing the timestamp of the commit point, the transaction will hit the
 AbstractJournal.indexCache. If the transaction passes the startTime instead,
 then all startTimes will be different and the cache will be defeated.
 
 Note: ITx.READ_COMMITTED views are given read-committed semantics
 using a ReadCommittedView.  This means that they can be cached
 since the view will update automatically as commits are made against
 the Journal.
getIndex in interface IIndexManagergetIndex in interface IResourceManagergetIndex in class AbstractJournalname - The index name.timestamp - A timestamp which represents either a possible commit time on
            the store or a read-only transaction identifier.null iff there is no index registered
         with that name for that timestamp.IndexManager.getIndex(String, long)public AbstractBTree[] getIndexSources(String name, long timestamp, BTree btree)
BTree as the sole element of the array since
 partitioned indices are not supported.getIndexSources in interface IResourceManagerbtree - A BTree.BTree.public final long newTx(long timestamp)
Journal.
 
 Note: This is a convenience method. The implementation of this method is
 delegated to the object returned by getTransactionService().
timestamp - A positive timestamp for a historical read-only transaction as
            of the first commit point LTE the given timestamp,
            ITx.READ_COMMITTED for a historical read-only
            transaction as of the most current commit point on the
            Journal as of the moment that the transaction is
            created, or ITx.UNISOLATED for a read-write
            transaction.ITransactionService.newTx(long)public final void abort(long tx)
 Note: This is a convenience method. The implementation of this method is
 delegated to the object returned by getTransactionService().
tx - The transaction identifier.ITransactionService.abort(long)public final long commit(long tx)
                  throws ValidationError
 Note: This is a convenience method. The implementation of this method is
 delegated to the object returned by getTransactionService().
tx - The transaction identifier.ValidationErrorITransactionService.commit(long)public final boolean prepare(long txId)
txId - The transaction identifier.true iff the write set of the transaction could be
         validated.TransactionNotFoundException - if no such transaction exists.public final long nextTimestamp()
getLocalTransactionManager() and
             ITimestampService.nextTimestamp().ILocalTransactionManager.
 
 Note: This is a convenience method. The implementation of this method is
 delegated to the object returned by getTransactionService().
ITimestampService.nextTimestamp()public ConcurrencyManager getConcurrencyManager()
public void shutdown()
executorService, then the IConcurrencyManager, the
 ITransactionService and finally the IResourceLockService.shutdown in interface IConcurrencyManagershutdown in interface IJournalshutdown in interface IServiceShutdownshutdown in class AbstractJournalAbstractJournal.shutdownNow()public void shutdownNow()
IConcurrencyManager is shutdown first, then the
 ITransactionService and finally the IResourceManager.shutdownNow in interface IConcurrencyManagershutdownNow in interface IJournalshutdownNow in interface IServiceShutdownshutdownNow in class AbstractJournalAbstractJournal.shutdown()protected void _close()
 Overridden to close the TemporaryStoreFactory.
_close in class AbstractJournalpublic <T> FutureTask<T> submit(AbstractTask<T> task)
IConcurrencyManager
 Note: Unisolated write tasks will NOT return before the next group commit
 (exceptions may be thrown if the task fails or the commit fails). The
 purpose of group commits is to provide higher throughput for writes on
 the store by only syncing the data to disk periodically rather than after
 every write. Group commits are scheduled by the #commitService.
 The trigger conditions for group commits may be configured using
 ConcurrencyManager.Options. If you are using the store in a
 single threaded context then you may set
 Options#WRITE_SERVICE_CORE_POOL_SIZE to ONE (1) which has the
 effect of triggering commit immediately after each unisolated write.
 However, note that you can not sync a disk more than ~ 30-40 times per
 second so your throughput in write operations per second will never
 exceed that for a single-threaded application writing on a hard disk.
 (Your mileage can vary if you are writing on a transient store or using a
 durable medium other than disk).
 
Note: The isolated indices used by a read-write transaction are NOT thread-safe. Therefore a partial order is imposed over concurrent tasks for the same transaction that seek to read or write on the same index(s). Full concurrency is allowed when different transactions access the same index(s), but write-write conflicts MAY be detected during commit processing.
 Note: The following exceptions MAY be wrapped by Future.get() for
 tasks submitted via this method:
 
ValidationErrorInterruptedExceptionIConcurrencyManager.shutdown() after the timeout has expired or
 IConcurrencyManager.shutdownNow(). In either of these cases the task will not be
 accepted by the journal.submit in interface IConcurrencyManagertask - The task.Future that may be used to resolve the outcome of the
         task.public <T> List<Future<T>> invokeAll(Collection<? extends AbstractTask<T>> tasks, long timeout, TimeUnit unit) throws InterruptedException
IConcurrencyManager
 Note: Contract is based on
 ExecutorService.invokeAll(Collection, long, TimeUnit) but only
 the Futures of the submitted tasks are returned.
invokeAll in interface IConcurrencyManagertasks - The tasks.Futures of all tasks that were
         submitted prior to the expiration
         of the timeout.InterruptedException - if interrupted while waiting, in which case unfinished
                tasks are cancelled.public <T> List<Future<T>> invokeAll(Collection<? extends AbstractTask<T>> tasks) throws InterruptedException
IConcurrencyManager
 Note: Contract is per ExecutorService.invokeAll(Collection)
invokeAll in interface IConcurrencyManagertasks - The tasks.Futures.InterruptedException - if interrupted while waiting, in which case unfinished
                tasks are cancelled.public IResourceManager getResourceManager()
IConcurrencyManagergetResourceManager in interface IConcurrencyManagerpublic ILocalTransactionManager getTransactionManager()
IConcurrencyManagergetTransactionManager in interface IConcurrencyManagerpublic ITransactionService getTransactionService()
public WriteExecutorService getWriteService()
IConcurrencyManagergetWriteService in interface IConcurrencyManagerpublic boolean shouldOverflow()
false. As a
 consequence the journal capacity will simply be extended by
 AbstractJournal.write(ByteBuffer) until the available disk space is exhausted.shouldOverflow in interface IResourceManagerfalse since overflow
         is NOT supported.public boolean isOverflowEnabled()
false.isOverflowEnabled in interface IResourceManagerpublic Future<Object> overflow()
IResourceManager
 Note: When this method returns true journal references
 MUST NOT be presumed to survive this method. In particular, the old
 journal MAY be closed out by this method and marked as read-only
 henceforth.
 
 Note: The caller MUST ensure that they have an exclusive lock on the
 WriteExecutorService such that no task is running with write
 access to the live journal.
 
 Note: The implementation MUST NOT write on the old journal - those writes
 will not be made restart safe by the WriteExecutorService - but
 it MAY write on the new journal.
overflow in interface IResourceManagerFuture for the task handling post-processing of the
         old journal.public File getIndexSegmentFile(IndexMetadata indexMetadata)
IResourceManagerIndexSegment should be written.
 The file will exist but will have zero length.getIndexSegmentFile in interface IResourceManagerindexMetadata - The index metadata.UnsupportedOperationException - since overflow() is not supported.public IBigdataFederation<?> getFederation()
IResourceManagergetFederation in interface IResourceManagerUnsupportedOperationException - always.public DataService getDataService()
IResourceManagerDataService whose resources are being managed.getDataService in interface IResourceManagerUnsupportedOperationException - always.public UUID getDataServiceUUID()
IResourceManagerUUID of the IDataService whose resources are
 being managed.getDataServiceUUID in interface IResourceManagerUnsupportedOperationException - always.public StaleLocatorReason getIndexPartitionGone(String name)
null since index partition moves are not
 supported.getIndexPartitionGone in interface IResourceManagername - The name of an index partition.null iff
         the index partition is not known to be gone.public SparseRowStore getGlobalRowStore()
IIndexStoreSparseRowStore used to
 store named property sets.getGlobalRowStore in interface IIndexStoreGlobalRowStoreSchemapublic SparseRowStore getGlobalRowStore(long timestamp)
IIndexStoreSparseRowStore used to store named
 property sets as of the specified timestamp.
 
 The SparseRowStore only permits ITx.UNISOLATED writes, so
 you MUST specify ITx.UNISOLATED as the timestamp if you intend to
 write on the global row store!
 
 You can request the most recent committed state of the global row store
 by specifying ITx.READ_COMMITTED.
getGlobalRowStore in interface IIndexStoretimestamp - The timestamp of the view.null if no view
         exists as of that timestamp.public BigdataFileSystem getGlobalFileSystem()
IIndexStoregetGlobalFileSystem in interface IIndexStoreBigdataFileSystemprotected void discardCommitters()
AbstractJournalAbstractJournal.abort() when the store must discard
 any hard references that it may be holding to objects registered as
 ICommitters.
 The default implementation discards the btree mapping names to named btrees.
Subclasses MAY extend this method to discard their own committers but MUST NOT override it completely.
discardCommitters in class AbstractJournalpublic TemporaryStore getTempStore()
IIndexStoreTemporaryStores. TemporaryStores are
 thread-safe and may be used by multiple processes at once. Old
 TemporaryStores are eventually retired by the factory and their
 storage is reclaimed once they are finalized (after they are no longer in
 use by any process). The decision to retire a TemporaryStore is
 either made implicitly, when it is no longer weakly reachable, or
 explicitly, when it has grown large enough that no new processes should
 begin using that TemporaryStore. In the latter case, the
 TemporaryStore will remain available to the process(es) using it
 and a new TemporaryStore will be allocated and made available to
 the caller.
 
 It is important that processes do not hold a hard reference to a
 TemporaryStore beyond the end of the process as that will prevent
 the TemporaryStore from being finalized. Holding reference to an
 AbstractBTree created on a TemporaryStore is equivalent
 to holding a hard reference to the TemporaryStore itself since
 the AbstractBTree holds onto the backing IRawStore using
 a hard reference.
getTempStore in interface IIndexStoreTemporaryStore.public IResourceLocator<?> getResourceLocator()
IIndexStoregetResourceLocator in interface IIndexStorepublic IResourceLockService getResourceLockService()
IIndexStoregetResourceLockService in interface IIndexStorepublic ExecutorService getExecutorService()
AbstractJournalIResourceLocator. There is no concurrency control associated with
 this service, but tasks run here may submit tasks to the
 ConcurrencyManager.getExecutorService in interface IIndexStoregetExecutorService in class AbstractJournalpublic AbstractStatisticsCollector getPlatformStatisticsCollector()
PlatformStatsPlugInpublic Object getGangliaService()
public LatchedExecutor getReadExecutor()
IResourceManager, and use it
 to do all IO, ideally using the JSR 166 fork/join mechanisms. Without
 moving this method to another interface, pre-fetch will not work for
 AbstractTask.
 
 This should be reconciled with the ConcurrencyManager, which has
 distinct ExecutorServices for readers and writers which control
 the per-task concurrency while this controls the disk read concurrency.
 
We could use the same pool for readers and writers on the disk.
public Future<Map<String,BaseIndexStats>> warmUp(List<String> namespaces)
namespaces - A list of zero or more namespaces to be warmed up (optional).
           When null or empty, all namespaces will be warmed
           up.WarmUpTaskpublic ScheduledFuture<?> addScheduledTask(Runnable task, long initialDelay, long delay, TimeUnit unit)
IIndexStoreaddScheduledTask in interface IIndexStoretask - The task.initialDelay - The initial delay.delay - The delay between invocations.unit - The units for the delay parameters.ScheduledFuture for that task.public final boolean getCollectPlatformStatistics()
true iff performance counters will be collected for the
 platform on which the client is running.getCollectPlatformStatistics in interface IIndexStorePlatformStatsPlugIn.Options.COLLECT_PLATFORM_STATISTICSpublic final boolean getCollectQueueStatistics()
true iff statistics will be collected for work queues.getCollectQueueStatistics in interface IIndexStoreQueueStatsPlugIn.Options.COLLECT_QUEUE_STATISTICSpublic final int getHttpdPort()
getHttpdPort in interface IIndexStoreHttpPlugin.Options.HTTPD_PORTpublic BTreeCounters getIndexCounters(String name)
IResourceManagerBTreeCounters for the named index. If none exist, then
 a new instance is atomically created and returned to the caller. This
 facilitates the reuse of the same BTreeCounters instance for all
 views of the named index.getIndexCounters in interface IResourceManagername - The name of the index.null.public AccessSemaphore.Access acquireUnisolatedConnectionAccess() throws InterruptedException
InterruptedExceptionpublic AccessSemaphore.Access acquireReadWriteConnectionAccess() throws InterruptedException
InterruptedExceptionBLZG-2041public boolean isHAJournal()
IJournalisHAJournal in interface IJournalCopyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.