Database Options

Database process options apply to Transaction Engine (TE), Storage Manager (SM), and Snapshot Storage Manager (SSM) database processes only and take effect at process start time.

The following table provides information for database options. For each option, the table below lists the following:

Note: All options described in the following table are case-sensitive.

See also: Setting Database Options for Managed Databases and Precedence for Database Process Options.

Option Name Option Argument Default Argument Description Scope
backoff.delay n 60000 Specifies the initial amount of time in milliseconds for the broker to wait before it tries to restart a database process. The delay time between retries increases two times (2x) with each retry. The default is 60 seconds. See .Setting Up Automatic Restart of Processes System
backoff.maxRetry n 10 Specifies the maximum number of times to try restarting a database process.
If the maximum retry number is reached and the process does not restart then enforcement stops for that process.////If backoff.stopOnMaxRetry is false then enforcement stops only for that process. If backoff.stopOnMaxRetry is true then enforcement stops for the database and the database is then in a STOPPED state with regard to enforcement.
In other words, enforcement is disabled but the database can be active and running while enforcement is stopped. See Setting Up Automatic Restart of Processes
System
backoff.reqMinUptime n 30000 Specifies the minimum required time, in milliseconds, for a database process to be available before the enforcer tries to restart a process that terminates. Specify -1 to disable the retry and back-off mechanism. See Setting Up Automatic Restart of Processes. This is a database option that you can also set for one or more process groups. For example, you might want the SMs process group to use the 30000 default setting while your custom Backup_SMs process group requires 60000 milliseconds of up time. See Specifying Retry and Back-Off Policy for a Process Group. System
backoff.stopOnMaxRetry true|false false If backoff.stopOnMaxRetry is true and backoff.maxRetry is met for at least one process, then the database will be in the STOPPED state with regard to enforcement. In other words, enforcement is disabled but the database can be active and running while enforcement is stopped. System
commit {safe | local | remote[:n] | region[:n]} safe There are several types of commit protocols that you can specify for transaction engines. For each protocol, durability is a database transaction property that ensures that changes made during a transaction are persistent and can be re-created if a storage manager terminates and restarts. For details, see . TE
config config_file None Specifies a configuration file to be passed to the TE, SM or SSM process. The configuration file can contain any of the options in this table, represented as key/value pairs, where each key is separated from its value with whitespace, and each key/value pair resides on its own line in the file. This configuration file will be passed to all processes (TEs, SMs, SSM) in the database. If the configuration file contains any options that might refer to a local directory path, this path must exist on all database hosts. TE, SM, SSM
countUnreachabeTE true|false false When set to true, the enforcer counts unreachable transaction engines when it determines whether a database has its maximum number of TEs. The default behavior is that the enforcer does not count unreachable transaction engines.
Typically, the default behavior is desired. By not counting unreachable TEs when calculating the number of TEs that are serving a database, the enforcer replaces an unreachable TE by starting a new TE on the host of any available broker. If you set countUnreachableTE to true then the enforcer does not start a new TE to replace an unreachable TE.
The maximum number of TEs that a database can have is specified in the database's template requirements section. Typically, you use the TE_MAX template variable to set this number.
System
crash-dir directory $NUODB_LOGDIR/crash Specifies a directory in which to place crash reports for NuoDB processes (TEs, SMs, SSM). This option is for Linux only. $NUODB_LOGDIR for package installations is /var/log/nuodb and for Tar/Local installations is $NUODB_HOME/var/log. TE, SM, SSM
database database_name   The database within the domain to manage. TE, SM, SSM
enabled-ciphers

Comma-separated list of cipher names

AES-256-CTR,RC4 A list of acceptable ciphers for clients to connect to the database with. This includes both SQL clients as well as management clients (NuoDB ManagerA command line tool that serves similar functions as the NuoDB Automation Console. From the NuoDB Manager, you can manage the life cycle of processes in your NuoDB domain, and you can monitor, analyze and control the domain. NuoDB Manager allows you to specify commands interactively or non-interactively.). The first cipher is the most preferred. Cipher names are case-sensitive and must be entered exactly as shown. The client will supply a list if ciphers it accepts: if no overlap is found the connection will be refused. The full list of available ciphers are: AES-256-CTR, RC4, and None. TE, SM, SSM
hostLimit true|false false If set to true, then the enforcer does not start a TE and SM on the same host. System
index-build-spill-to-disk enable|disable disable Required for enabling Spill to Disk during index creation. For more information, see Spill to Disk. TE
journal-dir directory N/A Sets the journal directory. SM, SSM
journal-max-directory-entries n 1000 Sets the maximum number of journal files in a journal sub-directory. A new journal sub-directory is created when the specified limit has been reached. SM, SSM
journal-max-file-size-bytes n 4000000 Specifies the maximum size in bytes of a journal file. However, the journal may write a file larger than the maximum file size if a single compressed journal message is larger than the specified maximum. The journal messages will be appended to the same journal file until the maximum file size is reached. SM, SSM
journal-single-file enable/disable disable Enables or disables the starting of a new journal file for every sync. SM, SSM
journal-sync-method {kernel|disk|osync} disk Specifies the file system synchronization mechanism when the journal needs to ensure the durability of a commit. The synchronization mechanism has been specifically tuned for each supported OS.
  • The kernelsynchronization method is the fastest but requires a battery backed disk controller. The kernel method on Linux also requires the file system to support fallocate, that is, ext4.
  • The disk synchronization method is the most durable but slowest method.
  • The osync method is available for copy-on-write files systems, also known as ZFS.
    For additional information, see Tuning Tips for Journal Performance.
SM, SSM
jvm-lib path   This specifies a path to the JVM, used by Java Stored Procedures. The jvm-lib argument is used to force the TE to load a specific instance of a JVM. If jvm-lib is not specified, the TE will use a search algorithm that on Windows will choose the default JVM as specified in the registry, and on Linux will search for the JVM as specified by the JAVA_HOME environment variable first and then in well-known locations (MacOS Java framework, /usr/java, /usr/lib/java, /opt/java, and so on). TE
ldap-dn ldapDN   Required for LDAP authentication. This, in conjunction with ldap-pass, allows proxy level authentication and the specified account must have search privileges on the ldap-base.
It is used to search for the full Distinguished Name (DN) of the user that connects.

Example:

ldap-dn 'cn=Manager,ou=people,dc=example,dc=com'

 
ldap-pass ldapPassword   Required for LDAP authentication. This, in conjunction with ldap-dn, allows proxy level authentication and the specified account must have search privileges on the ldap-base. It is used to search for the full Distinguished Name (DN) of the user that connects. TE
ldap-base ldapBase   Required for LDAP authentication. Starting point for the LDAP search instead of the default.

Example:

'ou=people,dc=example,dc=com'

 
ldap-type unixwindows   Required for LDAP authentication. LDAP server type. Only unix or windows is allowed. TE
ldap-uri ldapURI   Required for LDAP authentication. Specify URI referring to

Example:

'ldap://localhost:389'

the LDAP server(s).
 
ldap-conf ldapConf   Optional. LDAP path to ldap.conf file to use (see man ldap.conf — Linux only) TE
ldap-ca ldapCA   Optional. LDAP CA certificate to validate server certificate for ldaps (Linux only) TE
ldap-lib ldapLib   Optional. LDAP openldap library name (Linux only) TE
max-client-connections n 0 The number of concurrent client connections a TE will accept. The default (0) allows the TE to accept as many connections as are allowed by the operating system (that is, the same number of sockets that the process can open), minus some reserved for database operations. If the TE cannot accept the number of connections requested (because the operating system does not allow that many open sockets), the TE does not start.

Note: Connections are not created until needed by a client, regardless of this setting. NuoDB only checks the max-client-connections value against the operating system's largest allowed value.

Setting a non-zero value for this startup parameter results in the TE refusing new client connections if the number of current open connections is equal to the value.

TE
max-http-connections n 16 Maximum number of concurrent HTTP requests permitted towards the same server. This option is useful when you want to the limit the number of current connections between the SM or SSM and the archive. This option can be used only with HDFS and Amazon S3. TE
max-lost-archives n 0 The number of leader candidates that may be permanently lost (crash and become non-restartable) at a time before durability is compromised. For a database to be available to commit update transactions, max-lost-archives + 1 leader candidates must be running in the system. The default is 0, meaning that the system is resilient to any number of ordinary failures and available for updates as long as at least one leader candidate is running; but, if 1 or more leader candidates is permanently lost then durability may be compromised.

When max-lost-archives > 0, the transaction can fail to commit, and then roll back. But if the whole database fails before the transaction completes roll back, the partially rolled back transaction can be dredged as pre-committed and promoted to committed, thus creating a torn transaction.

 
mem n[m|g] 2g

Sets the maximum amount of memory in bytes to be utilized by a database process. To define this amount in megabytes or gigabytes, append either 'm' or 'g' to the value specified, for example 2g. NuoDB recommends that you set this value to the maximum amount of memory available for the database process without causing this process to use swap space.

 
node-port [n[,n]] NuoDB decides Port to use for this host, or optionally, a range of port values. By default NuoDB determines the port to be used. TE, SM, SSM
password password None You can set a password for database access, here. TE, SM, SSM
peer-ciphers Comma-separated list of cipher names AES-256-CTR,RC4 A list of acceptable ciphers for peers to connect to the database with. This includes other SMs, TEs, or SSMs as well as connections to the admin services. The first cipher is the most preferred. Cipher names are case-sensitive and must be entered exactly as shown. The client will supply a list if ciphers it accepts: if no overlap is found the connection is refused. The full list of available ciphers are: AES-256-CTR, RC4, and None. TE, SM, SSM
ping-timeout n Not set Normally, processes in the database (TEs, SMs and SSM) ping other processes at regular intervals and wait for a response. When network communication with a process times out, the process is evicted from the database by its peers.
Failure detection can be enabled by setting the ping-timeout option, specified in seconds. NuoDB recommends an interval timeout of 60 seconds or greater.
A setting of 0 means wait forever. That is, there is no time out.
See Setting Up Failure Detection for more information.
 
remote-syslog log-options None Equivalent to the syslog option but for use with the remote-syslog-server option. The log options you can specify include those listed in the table at the end of this topic. TE, SM, SSM
remote-syslog-server hostname Not set Send all logging information to the server log at the specified remote host. TE, SM, SSM
scratch-dir directory N/A Specifies a directory that NuoDB can use for temporary files to facilitate the processing of memory intensive operations. TE
scratch-dir-max-size n[m|g] 0

Sets the maximum capacity of the scratch-dir. To define this amount in megabytes or gigabytes, append either 'm' or 'g' to the value specified, for example 2g.

The default value of 0 means that no maximum size enforced by NuoDB.

TE, SM
snapshot-max-old-versions n 150 percent In an albumA snapshot storage manager uses albums to efficiently manage snapshots. An album refers to a set of snapshots taken during some period of time. Also, an album provides a place to store additional state required to use snapshots., this is the maximum ratio of old record versions to current record versions. If the addition of a records atomThe internal object structure representing all data in a NuoDB database. Atoms are self-coordinating objects that represent specific types of information (such as data, indexes or schemas). to an album crosses this threshold, the snapshot storage manager closes the album and begins writing snapshots to a new album. If a database is served by a snapshot storage manager, the snapshot options apply to that SSM. See Database Options for When SSMs Open New Albums. SSM
snapshot-max-size n 10000 snapshots Sets the maximum number of snapshots that an album can contain before the snapshot storage manager must close the album and start saving snapshots in a new album. SSM
snapshot-min-size n 100 snapshots Sets the minimum number of snapshots that an album must contain before the snapshot storage manager can close the album and start saving snapshots in a new album. SSM
snapshot-max-time n 14400 seconds Sets the maximum length of time that an album can be open. If an album is open for this length of time then a snapshot storage manager stops writing snapshots to that album and starts writing snapshots to a new album. SSM
snapshot-min-time n 60 seconds Sets the minimum length of time that an album must be open. After this length of time, the snapshot storage manager can start writing snapshots to a new album. SSM
storage-group name[,name...]   Associates the storage group specified by name with the SM. A storage group name must contain only alphanumeric characters and underscores. Multiple storage group names may be specified in a list separated by commas. The name can be the keyword all, meaning that all storage groups will be serviced by this SM. SM
syslog log-options   Send logging information to the system log. The log options you can specify are listed after this table. TE, SM, SSM
user user_name domain The administrative user name.  
verbose log-options None Report logging and other information. This information is captured in the agent log file.
For information about where the agent log is stored on your platform, see Log Files.
You must specify at least one of the log options specified after this table.
 

To use the remote-syslog, syslog or verbose options, you must specify at least one of the following log options. A log option specifies a log severity level (info, warn, error, debug and flush) or a log category (see Description of Logging Categories).

archive i18n security
atoms index services
bootstrap info sql
client-msgs journal sql-index-condition-filtering
debug msgs sql-params
dump net sql-statements
error opt-index-selection stats
failure opt-joins table-events
filter ping threads
flush records transactions
gc registry tx
histograms scheduler validate
hotcopy   warn