DbEnv::set_rpc_server
|
|
#include <db_cxx.h>
int
DbEnv::set_rpc_server(CLIENT *client, char *host,
long cl_timeout, long sv_timeout, u_int32_t flags);
Description
Establishes a connection for this dbenv to a RPC server. If
the client argument is NULL, this call creates a connection to
the Berkeley DB server on the indicated hostname and sets up a channel for
communication.
If the client channel has been provided by the
application then Berkeley DB will use it as its connection and the host and
cl_timeout fields are ignored.
The cl_timeout argument specifies the number of seconds the client
should wait for results to come back from the server. Once the timeout
has expired on any communication with the server, DB_NOSERVER will
be returned. If this value is zero, a default timeout is used.
The sv_timeout argument specifies the number of seconds the server
should allow a client connection to remain idle before assuming that the
client is gone. Once that timeout has been reached, the server releases
all resources associated with that client connection. Subsequent attempts
by that client to communicate with the server result in
DB_NOSERVER_ID, indicating that an invalid identifier has been
given to the server. This value can be considered a hint to the server.
The server may alter this value based on its own policies or allowed
values. If this value is zero, a default timeout is used.
The flags parameter is currently unused, and must be set to 0.
When the DbEnv::set_rpc_server method has been called, subsequent calls
to Berkeley DB library interfaces may return or throw exceptions encapsulating
DB_NOSERVER, DB_NOSERVER_ID, or
DB_NOSERVER_HOME.
The DbEnv::set_rpc_server method configures operations performed using the specified
DbEnv handle, not all operations performed on the underlying
database environment.
The DbEnv::set_rpc_server interface may not be called after the DbEnv::open
interface is called.
The DbEnv::set_rpc_server 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.
Errors
The DbEnv::set_rpc_server method may fail and throw an exception or return a non-zero error for the following conditions:
- EINVAL
- An invalid flag value or parameter was specified.
The DbEnv::set_rpc_server method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods.
If a catastrophic error has occurred, the DbEnv::set_rpc_server method may fail and
either return DB_RUNRECOVERY or throw a
DbRunRecoveryException,
in which case all subsequent Berkeley DB calls will fail in the same way.
Class
DbEnv
See Also
Database Environments and Related Methods
Copyright Sleepycat Software
|