Library Version 12.1.6.2

DbEnv::repmgr_stat()
Prev | Chapter 11. Replication Methods | Next

## DbEnv::repmgr_stat()

    #include <db_cxx.h>

    int
    DbEnv::repmgr_stat(DB_REPMGR_STAT **statp, u_int32_t flags);

The `DbEnv::repmgr_stat()` method returns the Replication Manager statistics.

The `DbEnv::repmgr_stat()` method creates a statistical structure of type `DB_REPMGR_STAT` and copies a pointer to it into a user-specified memory location.

Statistical structures are stored in allocated memory. If application-specific allocation routines have been declared (see DbEnv::set_alloc() for more information), they are used to allocate the memory; otherwise, the standard C library malloc(3) is used. The caller is responsible for deallocating the memory. To deallocate the memory, free the memory reference; references inside the returned memory need not be individually freed.

The following `DB_REPMGR_STAT` fields will be filled in:

- uintmax_t st_connect_fail;

  The number of times an attempt to open a new TCP/IP connection failed.

- uintmax_t st_connection_drop;

  The number of times an existing TCP/IP connection failed.

- u_int32_t st_elect_threads;

  The number of currently active election threads.

- uintmax_t st_incoming_msgs_dropped;

  The number of incoming messages that were dropped because the incoming queue was full. (Berkeley DB replication is tolerant of dropped messages, and will automatically request retransmission of any missing messages as needed.)

- u_int32_t st_incoming_queue_bytes;

  Bytes component of the memory consumption for the messages currently in the incoming queue.

- u_int32_t st_incoming_queue_gbytes;

  Gigabytes component of the memory consumption for the messages currently in the incoming queue.

- u_int32_t st_max_elect_threads;

  The number of election threads for which space is reserved.

- uintmax_t st_msgs_dropped;

  The number of outgoing messages that were completely dropped, because the outgoing message queue was full. (Berkeley DB replication is tolerant of dropped messages, and will automatically request retransmission of any missing messages as needed.)

- uintmax_t st_msgs_queued;

  The number of outgoing messages which could not be transmitted immediately, due to a full network buffer, and had to be queued for later delivery.

- uintmax_t st_perm_failed;

  The number of times a message critical for maintaining database integrity (for example, a transaction commit), originating at this site, did not receive sufficient acknowledgement from clients, according to the configured acknowledgement policy and acknowledgement timeout.

- u_int32_t st_site_participants;

  The number of participant sites in the replication group.

- u_int32_t st_site_total;

  The total number of sites in the replication group.

- u_int32_t st_site_views;

  The number of view sites in the replication group.

- uintmax_t st_takeovers;

  The number of times a subordinate process took over as the replication process after a previous replication process has finished successfully.

- uintmax_t st_write_ops_forwarded;

  The total number of outgoing write operations forwarded by this client.

- uintmax_t st_write_ops_received;

  The total number of incoming forwarded write operations received by this master.

The `DbEnv::repmgr_stat()` method may not be called before the DbEnv::open() method is called.

The `DbEnv::repmgr_stat()` method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on failure, and returns 0 on success.

### Parameters

#### statp

The statp parameter references memory into which a pointer to the allocated statistics structure is copied.

#### flags

The flags parameter must be set to 0 or the following value:

- `DB_STAT_CLEAR`

  Reset statistics after returning their values.

### Errors

The `DbEnv::repmgr_stat()` method may fail and throw a DbException exception, encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

#### EINVAL

If the method was called before DbEnv::open() was called; or if an invalid flag value or parameter was specified.

### Class

DbEnv

### See Also

Replication and Related Methods

Prev | Up | Next
DbEnv::repmgr_start() | Home | DbEnv::repmgr_stat_print()