Package com.sleepycat.db

## Class ReplicationConfig

- java.lang.Object
- - com.sleepycat.db.ReplicationConfig

All Implemented Interfaces:
  `java.lang.Cloneable`

    public final class ReplicationConfig
    extends java.lang.Object
    implements java.lang.Cloneable

Settings that configure Berkeley DB replication. Used in the `Environment.setReplicationConfig(com.sleepycat.db.ReplicationConfig, boolean)` method.

### Field Summary

Fields
`static ReplicationConfig` `AUTOINIT` The replication master should automatically re-initialize outdated clients (defaults to on.)
`static ReplicationConfig` `BULK` The replication master should send groups of records to the clients in a single network transfer.
`static ReplicationConfig` `DELAYCLIENT` The client should delay synchronizing to a newly declared master (defaults to off).
`static ReplicationConfig` `DISABLE_POLL` This flag is used to prevent the use of poll() as polling method for networking events on the target site.
`static ReplicationConfig` `DISABLE_SSL` This flag is used to prevent the use of SSL for securing messages shared between the nodes of a replication group.
`static ReplicationConfig` `ELECTIONS` Replication Manager automatically runs elections to choose a new master when the old master appears to have become disconnected.
`static ReplicationConfig` `ENABLE_EPOLL` This flag is used to force the use of epoll as polling method for networking events instad of poll or select.
`static ReplicationConfig` `FORWARD_WRITES` Enable simple write forwarding for this site.
`static ReplicationConfig` `LEASE` Master leases will be used for this site.
`static ReplicationConfig` `NOWAIT` Berkeley DB method calls that would normally block while clients are in recovery should return errors immediately.
`static ReplicationConfig` `PREFMAS_CLIENT` This flag is used to specify the client site in a replication group operating in preferred master mode.
`static ReplicationConfig` `PREFMAS_MASTER` This flag is used to specify the preferred master site in a replication group operating in preferred master mode.
`static ReplicationConfig` `STRICT_2SITE` Replication Manager observes the strict "majority" rule in managing elections, even in a group with only 2 sites.

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.String` `toString()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### BULK

    public static final ReplicationConfig BULK

The replication master should send groups of records to the clients in a single network transfer.

#### DELAYCLIENT

    public static final ReplicationConfig DELAYCLIENT

The client should delay synchronizing to a newly declared master (defaults to off). Clients configured in this way will remain unsynchronized until the application calls the `Environment.syncReplication()` method.

#### AUTOINIT

    public static final ReplicationConfig AUTOINIT

The replication master should automatically re-initialize outdated clients (defaults to on.)

#### NOWAIT

    public static final ReplicationConfig NOWAIT

Berkeley DB method calls that would normally block while clients are in recovery should return errors immediately.

#### STRICT_2SITE

    public static final ReplicationConfig STRICT_2SITE

Replication Manager observes the strict "majority" rule in managing elections, even in a group with only 2 sites. This means the client in a 2-site group will be unable to take over as master if the original master fails or becomes disconnected. (See the Elections section in the Berkeley DB Reference Guide for more information.) Both sites in the replication group should have the same value for this parameter.

#### DISABLE_POLL

    public static final ReplicationConfig DISABLE_POLL

This flag is used to prevent the use of poll() as polling method for networking events on the target site. This flag guarantees that instead of poll() select or epoll() would be used depending on the availablity of these methods on the target platform and additional flags provided to repmgr.

#### DISABLE_SSL

    public static final ReplicationConfig DISABLE_SSL

This flag is used to prevent the use of SSL for securing messages shared between the nodes of a replication group.

#### ELECTIONS

    public static final ReplicationConfig ELECTIONS

Replication Manager automatically runs elections to choose a new master when the old master appears to have become disconnected. This option is turned on by default.

#### ENABLE_EPOLL

    public static final ReplicationConfig ENABLE_EPOLL

This flag is used to force the use of epoll as polling method for networking events instad of poll or select. Use of this flag does not guarantee that epoll will be used though. It depends on the availability of epoll on target platform. Epoll is supposed to be used only when the expected number of connections for repmgr is greater than 1000.

#### LEASE

    public static final ReplicationConfig LEASE

Master leases will be used for this site.

Configuring this option may result in the `Database.get()` and `Cursor.get*()` methods throwing a `DatabaseException` when attempting to read entries from a database after the site's master lease has expired.

Once this option is turned on, it may never be turned off.

#### PREFMAS_MASTER

    public static final ReplicationConfig PREFMAS_MASTER

This flag is used to specify the preferred master site in a replication group operating in preferred master mode. A preferred master replication group must contain only two sites, with one site specified as the preferred master site and the other site specified as the client site. The preferred master site operates as the master site whenever possible.

#### PREFMAS_CLIENT

    public static final ReplicationConfig PREFMAS_CLIENT

This flag is used to specify the client site in a replication group operating in preferred master mode. A preferred master replication group must contain only two sites, with one site specified as the preferred master site and the other site specified as the client site. The client site in a preferred master replication group takes over temporarily as master when the preferred master site is unavailable.

#### FORWARD_WRITES

    public static final ReplicationConfig FORWARD_WRITES

Enable simple write forwarding for this site. This option is turned off by default.

By default, write operations cannot be performed on a replication client site. This option enables forwarding of simple client database put and delete operations to the master site for processing. These operations must use an implicit NULL transaction ID to be forwarded. Any other write operation that specifies a non-NULL transaction throws a DatabaseException.

The master must have an open database handle for the database on which a forwarded write operation is being performed.

All sites in the replication group should have the same value for this configuration option.

### Method Detail

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `java.lang.Object`