public class RepImpl extends EnvironmentImpl implements RepEnvConfigObserver
EnvironmentImpl.MBeanRegistrarconfigManager, dbMapTree, envInternal, envLogger, formatter, needRepConvert, startupTracker, statKey, statManager, USE_JAVA5_ADLER32| Constructor and Description |
|---|
RepImpl(File envHome,
EnvironmentConfig envConfig,
EnvironmentImpl sharedCacheEnv,
RepConfigProxy repConfigProxy) |
| Modifier and Type | Method and Description |
|---|---|
void |
abnormalClose()
Used by error handling to forcibly close an environment, and by tests to
close an environment to simulate a crash.
|
boolean |
addDbBackup(DbBackup backup)
For replicated environments only; just return true for a standalone
environment.
|
void |
addRepConfigObserver(RepEnvConfigObserver o) |
VLSN |
assignVLSNs(LogEntry entry)
{@literal
Generate the next VLSN and update the DTVLSN value in the item.
|
void |
awaitVLSNConsistency()
Ensure that the in-memory vlsn index encompasses all logged entries
before it is flushed to disk.
|
void |
blockTxnCompletion(CountDownLatch blocker)
Installs the commit-blocking latch that is used to halt the commit/abort
of transactions, in the final phase of a master transfer.
|
void |
checkIfMaster(Locker locker)
Ensures that the environment is currently a Master before proceeding
with an operation that requires it to be the master.
|
void |
checkRecordExtinctionAvailable()
Checks that using the record extinction feature.
|
void |
checkRulesForExistingEnv(boolean dbTreeReplicatedBit,
boolean dbTreePreserveVLSN)
Check whether this environment can be opened on an existing environment
directory.
|
void |
checkTTLAvailable()
Checks that writing records with a TTL is allowed.
|
void |
clearedCachedFileChecksum(String fileName)
Clears the cached checksum for a file when it may be overwritten
(e.g., entries may be erased).
|
ReplicationConfig |
cloneRepConfig() |
ReplicationMutableConfig |
cloneRepMutableConfig() |
DatabasePreemptedException |
createDatabasePreemptedException(String msg,
String dbName,
Database db)
For replicated environments only; only the overridden method should
ever be called.
|
DatabaseImpl |
createGroupDb()
Called when a node has identified itself as the master, which is when
the RepNode.selfElect is called.
|
protected Environment |
createInternalEnvironment()
Is overridden in RepImpl to create a ReplicatedEnvironment.
|
LockPreemptedException |
createLockPreemptedException(Locker locker,
Throwable cause)
For replicated environments only; only the overridden method should
ever be called.
|
LogOverwriteException |
createLogOverwriteException(String msg)
For replicated environments only; only the overridden method should
ever be called.
|
Txn |
createReplayTxn(long txnId)
Create a ReplayTxn for recovery processing.
|
ThreadLocker |
createRepThreadLocker()
Create an appropriate type of ThreadLocker.
|
Txn |
createRepUserTxn(TransactionConfig config)
Create an appropriate type of Replicated transaction.
|
StatManager |
createStatManager() |
void |
doCloseAfterInvalid()
This method must be called while synchronized on DbEnvPool.
|
String |
dumpAckFeederState()
Dumps the state associated with all active Feeders that supply
acknowledgments, along with identifying information about the node and
its current HA state.
|
String |
dumpState()
Dump interesting aspects of the node's state.
|
boolean |
getAllowRepConvert()
True if ReplicationConfig set allowConvert as true.
|
StreamAuthenticator |
getAuthenticator() |
boolean |
getCacheVLSN()
Returns true if the VLSN is both preserved and cached.
|
StateChangeListener |
getChangeListener() |
DataChannelFactory |
getChannelFactory() |
static int |
getClockSkewMs() |
ReplicaConsistencyPolicy |
getConsistencyPolicy(String propValue)
Allows standalone JE code to construct a consistency policy using the
CONSISTENCY_POLICY property value format.
|
JEVersion |
getCurrentJEVersion()
Returns the JE version that is currently running on this node,
consulting the TEST_JE_VERSION configuration parameter for a test
override.
|
ReplicaConsistencyPolicy |
getDefaultConsistencyPolicy()
Returns the default consistency policy for this EnvironmentImpl.
|
String |
getDiagnosticsClassName() |
long |
getEndOfLog()
Returns the end of the log.
|
Set<MasterTxn> |
getExistingMasterTxns()
Peruse the environment wide transaction table, and return a set of
all existing MasterTxns.
|
DataChannelFactory.ConnectOptions |
getFeederConnectOptions()
Returns the options used to configure the feeder channel connection.
|
FeederFilter |
getFeederFilter() |
FeederTxns |
getFeederTxns() |
DatabaseImpl |
getGroupDb()
Open the group db, which should exist already, using NO_CONSISTENCY.
|
Set<InetSocketAddress> |
getHelperSockets()
Returns the set of sockets associated with helper nodes.
|
InetSocketAddress |
getHostAddress()
Returns the socket address associated with this node, with a port of zero
suitable for binding locally to any free port associated with the
address.
|
String |
getHostName()
Returns the hostname associated with this node.
|
boolean |
getIsMaster()
Returns whether this is a replicated environment that is the master,
else false.
|
VLSN |
getLastTxnEnd() |
long |
getLoggedDTVLSN()
Returns the logged durable txn VLSN.
|
LogFileRewriteListener |
getLogRewriteListener() |
String |
getMonitorClassName() |
String |
getName()
Get an environment name, for tagging onto logging and debug message.
|
NameIdPair |
getNameIdPair() |
int |
getNodeId() |
String |
getNodeName()
Get the node name if this is a replicated environment or else return
null.
|
NodeState |
getNodeState() |
StatGroup |
getNodeStats() |
int |
getPort()
Returns the port used by the replication node.
|
boolean |
getPreserveVLSN()
Returns true if the VLSN is preserved as the record version.
|
Replay |
getReplay() |
int |
getReplayFreeDiskPercent()
Returns the deprecated HA REPLAY_FREE_DISK_PERCENT parameter, or zero
if this is not an HA env.
|
long |
getReplayTxnTimeout() |
ReplicationNetworkConfig |
getRepNetConfig() |
RepNode |
getRepNode() |
Collection<StatGroup> |
getRepStatGroups(StatsConfig config,
Integer statKey1) |
InetSocketAddress |
getSocket() |
SortedSet<String> |
getStatCaptureProjections() |
ReplicatedEnvironment.State |
getState()
Returns the current state associated with this ReplicatedEnvironment
|
StateChangeEvent |
getStateChangeEvent()
Returns the state change event that transitioned the
ReplicatedEnviroment to its current state.
|
ReplicatedEnvironmentStats |
getStats(StatsConfig config) |
ReplicatedEnvironmentStats |
getStats(StatsConfig config,
Integer contextKey) |
ReplicatedEnvironmentStats |
getStatsInternal(StatsConfig config) |
UUID |
getUUID() |
VLSNIndex |
getVLSNIndex() |
VLSNRecoveryProxy |
getVLSNProxy()
Used by environment recovery to get a tracker to collect VLSN-LSN
mappings that are within the recovery part of the log.
|
void |
handleRestoreRequired(RestoreRequired restoreRequired)
Recovery encountered a RestoreRequired marker.
|
protected DbConfigManager |
initConfigManager(EnvironmentConfig envConfig,
RepConfigProxy repConfigProxy)
Create a config manager that holds the configuration properties that
have been passed in.
|
protected void |
initConfigParams(EnvironmentConfig envConfig,
RepConfigProxy repConfigProxy)
Called by the EnvironmentImpl constructor.
|
protected Formatter |
initFormatter() |
void |
initializeChannelFactory()
Initialize the DataChannelFactory in our configuration for use.
|
void |
invalidate(EnvironmentFailureException e)
Invalidate the environment.
|
void |
invalidateBackups(long fileNumber) |
boolean |
isArbiter()
Return true if this environment is used as an Arbiter.
|
boolean |
isDesignatedPrimary()
Return true if the node has been configured as a Designated Primary.
|
boolean |
isMaster() |
boolean |
isReplicated()
Return true if this environment is part of a replication group.
|
static boolean |
isSimulatePreDTVLSNMaster() |
ReplicatedEnvironment.State |
joinGroup(ReplicaConsistencyPolicy consistency,
QuorumPolicy initialElectionPolicy)
Wait for this node to join a replication group and return whether it is
a MASTER or REPLICA.
|
ReplicatedEnvironment |
makeEnvironment() |
protected void |
postCheckpointClose(boolean checkpointed)
Close any resources that need to be closed after the closing checkpoint.
|
void |
postLogAbortHook(MasterTxn txn)
Releases the block latch lock, if held.
|
void |
postLogCommitAbortHook(MasterTxn txn)
Removes any pending acknowledgments that were registered by the
preLogCommitHook.
|
void |
postLogCommitHook(MasterTxn txn,
LogItem commitItem)
It ensures that the feeder obtains the requisite number of
acknowledgments required for a successful commit.
|
protected void |
postRecoveryConversion()
Called after recovery but before any other initialization.
|
void |
preCheckpointEndFlush()
Flush any information that needs to go out at checkpoint.
|
void |
preLogAbortHook(MasterTxn txn)
Invoked before aborting a MasterTxn, this happens when the master is
going to be a replica because of mastership transfer.
|
void |
preLogCommitHook(MasterTxn txn)
This hook is used primarily to perform the final checks before allowing
the commit operation to proceed.
|
void |
preRecoveryCheckpointInit(RecoveryInfo recoveryInfo)
The VLSNIndex must be created, merged and flushed before the recovery
checkpoint.
|
DatabaseImpl |
probeGroupDb()
Open the group db, which should exist already, using NO_CONSISTENCY.
|
void |
registerVLSN(LogItem logItem)
A replicated log entry has been written on this node.
|
void |
removeDbBackup(DbBackup backup)
For replicated environments only; do nothing for a standalone
environment.
|
void |
repEnvConfigUpdate(RepConfigManager configMgr,
ReplicationMutableConfig newConfig)
Notifies the observer that one or more mutable rep properties have been
changed.
|
protected DbConfigManager |
resetConfigManager(EnvironmentConfig newConfig)
Make a new config manager that has all the properties needed.
|
void |
setAuthenticator(StreamAuthenticator authenticator) |
void |
setBackupProhibited(boolean backupProhibited) |
void |
setChangeListener(StateChangeListener listener) |
void |
setDefaultConsistencyPolicy(ReplicaConsistencyPolicy policy)
The default consistency is not currently mutable in the API, but can be
set for testing purposes.
|
void |
setHardRecoveryInfo(RollbackException e)
If this node was started with a hard recovery, preserve that
information.
|
void |
setReplicaLatestVLSNSeq(long seq) |
void |
setRepMutableConfig(ReplicationMutableConfig config) |
static void |
setSimulatePreDTVLSNMaster(boolean simulatePreDTVLSNMaster)
Test method to create pre-DTVLSN logs.
|
static void |
setSkewMs(int skewMs)
Used during testing to introduce artificial clock skews.
|
void |
setSyncupProgress(SyncupProgress progress) |
void |
setSyncupProgress(SyncupProgress progress,
long n,
long total) |
protected void |
setupClose(PrintWriter errors)
Release any resources from a subclass that need to be released before
close is called on regular environment components.
|
void |
shutdownGroupSetup(long timeoutMs)
Sets up the environment for group shutdown when the environment is
closed.
|
String |
transferMaster(Set<String> replicas,
long timeout,
boolean force) |
boolean |
tryTruncateVlsnHead(VLSN deleteEnd,
long deleteFileNum)
Truncate the head of the VLSNIndex to unprotect the given file, if
possible.
|
boolean |
tryVlsnHeadTruncate(long bytesNeeded)
Truncate the head of the VLSNIndex to allow file deletion, if possible.
|
void |
txnBeginHook(MasterTxn txn)
Ensure that a sufficient number of feeders are available before
proceeding with a master transaction begin.
|
void |
unblockTxnCompletion()
Releases the transaction block latch.
|
void |
updateCBVLSN(LocalCBVLSNUpdater updater)
If the GlobalCBVLSN is not defunct, updates the CBVLSN on behalf of a
Feeder input thread (or FeederManager running in the RepNode thread).
|
addConfigObserver, addToCompressorQueue, addToCompressorQueue, allowBlindOps, allowBlindPuts, appendException, checkDiskLimitViolation, checkIfInvalid, checkImmutablePropsForEquality, checkOpen, cloneConfig, cloneMutableConfig, close, close, closeAfterInvalid, closeHandlers, coordinateWithCheckpoint, createRepTxn, criticalEviction, daemonEviction, decThreadLocalReferenceCount, envConfigUpdate, expiresWithin, expiresWithin, finishInit, flushLog, forceLogFileFlip, fullyInitialized, getAdler32ChunkSize, getAppOpenCount, getBackupCount, getBackupManager, getCheckpointer, getClassLoader, getCleaner, getCompactMaxKeyLength, getConfigManager, getConfiguredHandler, getConsoleHandler, getDataEraser, getDataVerifier, getDbEviction, getDbTree, getDeadlockDetection, getDeadlockDetectionDelay, getDidFullThreadDump, getDiskLimitViolation, getDupConvertPreloadConfig, getEnvironmentHome, getEvictor, getExceptionListener, getExpirationProfile, getExposeUserData, getExtinctionScanner, getExtinctionState, getExtinctionState, getExtinctionStatus, getFileHandler, getFileManager, getFileProtector, getINCompressor, getINCompressorQueueSize, getInMemoryINs, getInternalEnvHandle, getInvalidatingException, getInvalidatingExceptionReference, getLatchTimeoutMs, getLockTimeout, getLogFlusher, getLogger, getLogManager, getMaxEmbeddedLN, getMemoryBudget, getMetadataStore, getNoComparators, getNodeSequence, getOffHeapCache, getOptionalNodeName, getRecoveryProgressListener, getReservedFilesAutoRepair, getRootLsn, getSecondaryAssociationLock, getSharedCache, getStartupTracker, getThreadLocalReferenceCount, getThroughputStat, getTtlClockTolerance, getTtlLnPurgeDelay, getTtlMaxTxnTime, getTxnManager, getTxnTimeout, getUtilizationProfile, getUtilizationTracker, hasExtinctionFilter, incBinDeltaDeletes, incBinDeltaGets, incBinDeltaInserts, incBinDeltaUpdates, incDeleteFailOps, incDeleteOps, incInsertFailOps, incInsertOps, incPositionOps, incRelatchesRequired, incRootSplits, incSearchFailOps, incSearchOps, incThreadLocalReferenceCount, incUpdateOps, invalidate, invokeCheckpoint, invokeCleaner, invokeCompressor, invokeEvictor, isClosed, isClosing, isDbLoggingDisabled, isExpirationEnabled, isExpired, isExpired, isInInit, isMemOnly, isNoLocking, isReadOnly, isRepConverted, isTransactional, isValid, lazyCompress, lazyCompress, loadStats, loadStatsInternal, lockStat, logMapTreeRoot, logMapTreeRoot, makeDaemonThreadName, maybeForceYield, mayNotWrite, needRepConvert, noteBackupCopyFilesCount, noteBackupCopyFilesMs, open, preload, readMapTreeFromLog, registerMBean, removeConfigObserver, requestShutdownDaemons, resetLoggingLevel, rewriteMapTreeRoot, setBackgroundSleepHook, setDidFullThreadDump, setLockTimeout, setMutableConfig, shutdownDaemons, sleepAfterBackgroundIO, specialEviction, txnBegin, txnStat, updateBackgroundReads, updateBackgroundWrites, useOffHeapChecksums, verify, verifyCursors, wasInvalidatedpublic RepImpl(File envHome, EnvironmentConfig envConfig, EnvironmentImpl sharedCacheEnv, RepConfigProxy repConfigProxy) throws EnvironmentNotFoundException, EnvironmentLockedException
protected void initConfigParams(EnvironmentConfig envConfig, RepConfigProxy repConfigProxy)
initConfigParams in class EnvironmentImplrepConfigProxy - unusedprotected Formatter initFormatter()
initFormatter in class EnvironmentImplpublic String getMonitorClassName()
getMonitorClassName in class EnvironmentImplpublic String getDiagnosticsClassName()
getDiagnosticsClassName in class EnvironmentImplprotected DbConfigManager initConfigManager(EnvironmentConfig envConfig, RepConfigProxy repConfigProxy)
EnvironmentImplinitConfigManager in class EnvironmentImplenvConfig - is the environment configuration to userepConfigProxy - are the replication configurations to use. In this
case, the Properties bag has been extracted from the configuration
instance, to avoid crossing the compilation firewall.public boolean getAllowRepConvert()
EnvironmentImplgetAllowRepConvert in class EnvironmentImplprotected DbConfigManager resetConfigManager(EnvironmentConfig newConfig)
EnvironmentImplresetConfigManager in class EnvironmentImplpublic ReplicationConfig cloneRepConfig()
public ReplicatedEnvironment makeEnvironment()
public ReplicationMutableConfig cloneRepMutableConfig()
public void setRepMutableConfig(ReplicationMutableConfig config) throws DatabaseException
DatabaseExceptionpublic void repEnvConfigUpdate(RepConfigManager configMgr, ReplicationMutableConfig newConfig) throws DatabaseException
RepEnvConfigObserverrepEnvConfigUpdate in interface RepEnvConfigObserverDatabaseExceptionpublic void addRepConfigObserver(RepEnvConfigObserver o)
public void preRecoveryCheckpointInit(RecoveryInfo recoveryInfo)
preRecoveryCheckpointInit in class EnvironmentImplpublic ReplicatedEnvironment.State getState()
public StateChangeEvent getStateChangeEvent()
public NodeState getNodeState()
public ReplicatedEnvironment.State joinGroup(ReplicaConsistencyPolicy consistency, QuorumPolicy initialElectionPolicy) throws ReplicaConsistencyException, DatabaseException
public void initializeChannelFactory()
IllegalArgumentException - if the ReplicationNetworkConfig
is invalid.protected Environment createInternalEnvironment()
EnvironmentImplcreateInternalEnvironment in class EnvironmentImplprotected void setupClose(PrintWriter errors) throws DatabaseException
EnvironmentImplsetupClose in class EnvironmentImplDatabaseExceptionRelease all replication resources that can be released before the
checkpoint. Note that any method that creates or clears the repNode
field must be called from a synchronized caller.
Note that the vlsnIndex is closed as a callback, from
postCheckpointPreEnvClose()protected void postCheckpointClose(boolean checkpointed)
throws DatabaseException
postCheckpointClose in class EnvironmentImplcheckpointed - if true, a checkpoint as issued before the closeDatabaseExceptionprotected void postRecoveryConversion()
EnvironmentImplpostRecoveryConversion in class EnvironmentImplNote: this conversion process will iterate over all user created
databases in the environment, which could be potentially be a costly
affair. However, let's opt for simplicity and defer any optimizations
until we see whether this is an important use case.public void doCloseAfterInvalid()
EnvironmentImpldoCloseAfterInvalid in class EnvironmentImplpublic void abnormalClose()
throws DatabaseException
abnormalClose in class EnvironmentImplDatabaseExceptionpublic void registerVLSN(LogItem logItem)
registerVLSN in class EnvironmentImplDatabaseExceptionpublic VLSN assignVLSNs(LogEntry entry)
assignVLSNs in class EnvironmentImplentry - the log entry with which the VLSN will be associated. If
the log entry represents a commit or abort entry, its DTVLSN is modified
so that it's correct when it's serialized out.public void preCheckpointEndFlush()
throws DatabaseException
preCheckpointEndFlush in class EnvironmentImplDatabaseExceptionpublic boolean isMaster()
isMaster in class EnvironmentImplpublic void setChangeListener(StateChangeListener listener)
public StateChangeListener getChangeListener()
public VLSNIndex getVLSNIndex()
public FeederTxns getFeederTxns()
public ReplicatedEnvironmentStats getStats(StatsConfig config)
public Collection<StatGroup> getRepStatGroups(StatsConfig config, Integer statKey1)
getRepStatGroups in class EnvironmentImplpublic SortedSet<String> getStatCaptureProjections()
getStatCaptureProjections in class EnvironmentImplpublic StatManager createStatManager()
createStatManager in class EnvironmentImplpublic FeederFilter getFeederFilter()
public ReplicatedEnvironmentStats getStatsInternal(StatsConfig config)
public ReplicatedEnvironmentStats getStats(StatsConfig config, Integer contextKey)
public Replay getReplay()
public void checkIfMaster(Locker locker) throws UnknownMasterException, ReplicaWriteException
UnknownMasterException - if the node is disconnectedReplicaWriteException - if the node is currently a replicapublic RepNode getRepNode()
public ThreadLocker createRepThreadLocker()
createRepThreadLocker in class EnvironmentImplpublic Txn createRepUserTxn(TransactionConfig config) throws DatabaseException
createRepUserTxn in class EnvironmentImplconfig - the transaction configurationDatabaseExceptionpublic void txnBeginHook(MasterTxn txn) throws InterruptedException, DatabaseException
txn - the master transaction being initiated.InterruptedExceptionDatabaseException - if there were insufficient Replicas after the
timeout period.public void blockTxnCompletion(CountDownLatch blocker) throws InterruptedException
InterruptedExceptionupdateCBVLSN(LocalCBVLSNUpdater)public void updateCBVLSN(LocalCBVLSNUpdater updater)
Does the update while avoiding the possibility that any resulting GroupDB update may get blocked behind the final phase of a master transfer.
We skip the update if we're at the point of blocking new transactions for a master transfer. And we use a read/write lock in order to be able to examine that state safely.
public void unblockTxnCompletion()
public void preLogCommitHook(MasterTxn txn) throws InsufficientReplicasException, RestartRequiredException, UnknownMasterException, ReplicaWriteException, EnvironmentFailureException
txn - the master transaction being committedInsufficientReplicasException - if the feeder is not in contact
with enough replicas.RestartRequiredException - if the environment is invalid.UnknownMasterException - if the current master is unknown.ReplicaWriteException - if the node transitioned to a Replica
after the transaction was initiated.EnvironmentFailureExceptionpublic void postLogCommitHook(MasterTxn txn, LogItem commitItem) throws InsufficientAcksException, InterruptedException, EnvironmentFailureException
txn - The MasterTxn that was committed locally.InterruptedException - if the thread was interrupted while
waiting for acknowledgments.InsufficientAcksException - if the master received an insufficient
number of commit acknowledgments within the replica commit timeout
period.EnvironmentFailureExceptionpublic void preLogAbortHook(MasterTxn txn) throws EnvironmentFailureException, ReplicaWriteException, UnknownMasterException
txn - The MasterTxn that was aborted locally.ReplicaWriteException - if the node transitioned to a Replica
after the transaction was initiated.UnknownMasterException - if the current master is unknown.EnvironmentFailureExceptionpublic void postLogAbortHook(MasterTxn txn)
public void postLogCommitAbortHook(MasterTxn txn)
commit()
fails and therefore must be aborted.public Txn createReplayTxn(long txnId) throws DatabaseException
createReplayTxn in class EnvironmentImplDatabaseExceptionpublic VLSNRecoveryProxy getVLSNProxy()
getVLSNProxy in class EnvironmentImplpublic UUID getUUID()
public static void setSkewMs(int skewMs)
public static int getClockSkewMs()
public boolean tryVlsnHeadTruncate(long bytesNeeded)
tryVlsnHeadTruncate in class EnvironmentImplpublic boolean tryTruncateVlsnHead(VLSN deleteEnd, long deleteFileNum)
tryTruncateVlsnHead in class EnvironmentImplpublic void clearedCachedFileChecksum(String fileName)
clearedCachedFileChecksum in class EnvironmentImplpublic int getNodeId()
public NameIdPair getNameIdPair()
public long getReplayTxnTimeout()
getReplayTxnTimeout in class EnvironmentImplpublic ReplicaConsistencyPolicy getDefaultConsistencyPolicy()
EnvironmentImplgetDefaultConsistencyPolicy in class EnvironmentImplpublic ReplicaConsistencyPolicy getConsistencyPolicy(String propValue)
EnvironmentImplgetConsistencyPolicy in class EnvironmentImplpublic void setDefaultConsistencyPolicy(ReplicaConsistencyPolicy policy)
public long getLoggedDTVLSN()
throws FileNotFoundException
FileNotFoundException - if the file containing the last txn commit
or abort entry does not existpublic long getEndOfLog()
EnvironmentImplgetEndOfLog in class EnvironmentImplpublic boolean getPreserveVLSN()
getPreserveVLSN in class EnvironmentImplpublic boolean getCacheVLSN()
getCacheVLSN in class EnvironmentImplpublic String getName()
EnvironmentImplgetName in class EnvironmentImplEnvironmentImpl.getName()public String getNodeName()
EnvironmentImplgetNodeName in class EnvironmentImplpublic boolean getIsMaster()
EnvironmentImplgetIsMaster in class EnvironmentImplpublic boolean isReplicated()
isReplicated in class EnvironmentImplpublic boolean isArbiter()
isArbiter in class EnvironmentImplpublic void checkRulesForExistingEnv(boolean dbTreeReplicatedBit,
boolean dbTreePreserveVLSN)
throws UnsupportedOperationException
checkRulesForExistingEnv in class EnvironmentImplUnsupportedOperationException - via Environment ctor.public String getHostName()
public InetSocketAddress getHostAddress()
public DataChannelFactory.ConnectOptions getFeederConnectOptions()
public int getPort()
public InetSocketAddress getSocket()
public JEVersion getCurrentJEVersion()
public Set<InetSocketAddress> getHelperSockets()
public DatabaseImpl createGroupDb() throws DatabaseException
DatabaseExceptionpublic DatabaseImpl getGroupDb() throws DatabaseNotFoundException, DatabaseException
public DatabaseImpl probeGroupDb() throws DatabaseException
DatabaseExceptionpublic boolean isDesignatedPrimary()
Arbiter.isActive()public boolean addDbBackup(DbBackup backup)
EnvironmentImpladdDbBackup in class EnvironmentImplpublic void removeDbBackup(DbBackup backup)
EnvironmentImplremoveDbBackup in class EnvironmentImplpublic void invalidateBackups(long fileNumber)
public void setBackupProhibited(boolean backupProhibited)
public LockPreemptedException createLockPreemptedException(Locker locker, Throwable cause)
EnvironmentImplcreateLockPreemptedException in class EnvironmentImplpublic DatabasePreemptedException createDatabasePreemptedException(String msg, String dbName, Database db)
EnvironmentImplcreateDatabasePreemptedException in class EnvironmentImplpublic LogOverwriteException createLogOverwriteException(String msg)
EnvironmentImplcreateLogOverwriteException in class EnvironmentImplpublic int getReplayFreeDiskPercent()
EnvironmentImplgetReplayFreeDiskPercent in class EnvironmentImplpublic void shutdownGroupSetup(long timeoutMs)
public String dumpState()
public String dumpAckFeederState()
public void setHardRecoveryInfo(RollbackException e)
public StatGroup getNodeStats()
public void awaitVLSNConsistency()
awaitVLSNConsistency in class EnvironmentImplpublic void setSyncupProgress(SyncupProgress progress)
public void setSyncupProgress(SyncupProgress progress, long n, long total)
public static void setSimulatePreDTVLSNMaster(boolean simulatePreDTVLSNMaster)
public static boolean isSimulatePreDTVLSNMaster()
public LogFileRewriteListener getLogRewriteListener()
public ReplicationNetworkConfig getRepNetConfig()
public DataChannelFactory getChannelFactory()
public void invalidate(EnvironmentFailureException e)
EnvironmentImplinvalidate in class EnvironmentImplpublic VLSN getLastTxnEnd()
public Set<MasterTxn> getExistingMasterTxns()
public void checkTTLAvailable()
checkTTLAvailable in class EnvironmentImplIllegalStateException - if any node in the group is less than
JE_TTL_VERSION.public void checkRecordExtinctionAvailable()
EnvironmentImplcheckRecordExtinctionAvailable in class EnvironmentImplpublic void handleRestoreRequired(RestoreRequired restoreRequired)
handleRestoreRequired in class EnvironmentImplrestoreRequired - getFailureType() is used to indicate the how
the environment can be healed.public void setAuthenticator(StreamAuthenticator authenticator)
public StreamAuthenticator getAuthenticator()
public void setReplicaLatestVLSNSeq(long seq)
setReplicaLatestVLSNSeq in class EnvironmentImplCopyright © 2024. All rights reserved.