Class EntryContainer
java.lang.Object
org.opends.server.backends.pluggable.EntryContainer
- All Implemented Interfaces:
ConfigurationChangeListener<PluggableBackendCfg>
public final class EntryContainer
extends Object
implements ConfigurationChangeListener<PluggableBackendCfg>
Storage container for LDAP entries. Each base DN of a backend is given its own entry container. The entry container
is the object that implements the guts of the backend API methods for LDAP operations.
Avoiding deadlocks
To eliminate the risk of deadlocks all database operations either take care to only hold a single record lock at a time, or ensure that records are locked in a well-defined order. Firstly, indexes are accessed in the following order:- dn2id
- id2childrenCount (parent count)
- dn2uri
- id2childrenCount (total count)
- attribute and big indexes (ordered by index name)
- VLV indexes (ordered by index name)
- id2entry
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ControlThe control to force the usage of a non-atomic subtree deletion algorithm. -
Method Summary
Modifier and TypeMethodDescriptionApplies the configuration changes to this change listener.booleanisConfigurationChangeAcceptable(PluggableBackendCfg cfg, List<LocalizableMessage> unacceptableReasons) Indicates whether the proposed change to the configuration is acceptable to this change listener.toString()
-
Field Details
-
FORCE_NON_ATOMIC_CONTROL
The control to force the usage of a non-atomic subtree deletion algorithm. For testing purpose.
-
-
Method Details
-
isConfigurationChangeAcceptable
public boolean isConfigurationChangeAcceptable(PluggableBackendCfg cfg, List<LocalizableMessage> unacceptableReasons) Description copied from interface:ConfigurationChangeListenerIndicates whether the proposed change to the configuration is acceptable to this change listener.- Specified by:
isConfigurationChangeAcceptablein interfaceConfigurationChangeListener<PluggableBackendCfg>- Parameters:
cfg- The new configuration containing the changes.unacceptableReasons- A list that can be used to hold messages about why the provided configuration is not acceptable.- Returns:
- Returns
trueif the proposed change is acceptable, orfalseif it is not.
-
applyConfigurationChange
Description copied from interface:ConfigurationChangeListenerApplies the configuration changes to this change listener.- Specified by:
applyConfigurationChangein interfaceConfigurationChangeListener<PluggableBackendCfg>- Parameters:
cfg- The new configuration containing the changes.- Returns:
- Returns information about the result of changing the configuration.
-
toString
-