@SystemInformation — Returns configuration information about VoltDB and the individual nodes of the database cluster.
@SystemInformation
@SystemInformation String component
The @SystemInformation system procedure returns information about the configuration of the VoltDB database or the individual nodes of the database cluster, depending upon the component keyword you specify. The following are the allowable values of component:
Returns information about the configuration of the database. In particular, this keyword returns information about the various features and settings enabled through the configuration file, such as export, snapshots, K-safety, and so on. These properties are returned in a single VoltTable of name/value pairs.
Returns information about the individual servers in the database cluster, including the host name, the IP address, the version of VoltDB running on the server, as well as the path to the configuration file in use. The overview also includes entries for the start time of the server and length of time the server has been running.
If you do not specify a component, @SystemInformation returns the results of the OVERVIEW component (to provide compatibility with previous versions of the procedure).
Returns one of two VoltTables depending upon which component is requested.
For the DEPLOYMENT component, the VoltTable has the columns specified in the following table.
Name | Datatype | Description |
---|---|---|
PROPERTY | STRING | The name of the deployment property being reported. |
VALUE | STRING | The corresponding value of that property in the configuration file (either explicitly or by default). |
For the OVERVIEW component, information is reported for each server in the cluster, so an additional column is provided identifying the host node.
Name | Datatype | Description |
---|---|---|
HOST_ID | INTEGER | A numeric identifier for the host node. |
KEY | STRING | The name of the system attribute being reported. |
VALUE | STRING | The corresponding value of that attribute for the specified host. |
The first example displays information about the individual servers in the database cluster:
$ sqlcmd 1> exec @SystemInformation overview;
The following program example uses @SystemInformation to display information about the nodes in the cluster and then about the database itself.
VoltTable[] results = null; try { results = client.callProcedure("@SystemInformation", "OVERVIEW").getResults(); System.out.println("Information about the database cluster:"); for (VoltTable node : results) System.out.println(node.toString()); results = client.callProcedure("@SystemInformation", "DEPLOYMENT").getResults(); System.out.println("Information about the database configuration:"); for (VoltTable node : results) System.out.println(node.toString()); } catch (Exception e) { e.printStackTrace(); }