Managing Admin Directory Size
You should specify a sufficient directory size for the Admin database when you initially install your store, using the makebootconfig admindirsize
parameter. If you do not specify a value, the system allocates a default of 3 GB as the size of the Admin directory. See Configuring Your KVStore Installation and makebootconfig for details.
Specify the value for the -admindirsize
parameter as a long,
optionally followed by a unit string. Accepted unit strings are: KB, MB, and GB,
corresponding to 1024, 1024², and 1024³ respectively. Acceptable strings are case
insensitive. Valid delimiters between the long value and the unit string are " ",
"-", or "_". If you specify the delimiter as " ", your value should be enclosed in
double quotes, For example "10 GB". If you have any other delimiter double quotes is
not mandatory. For example 10_GB or 10-GB.
Also, if the admin directory fills up its allotted storage space with reserved files, see Managing Disk Thresholds for more information.
If the Admin completely uses up its storage space, it will not be able to start. This condition is unlikely to occur, but in the event that your Admin cannot start, you should check its available disk space. If the directory is full, then you should increase the available disk space to the Admin. For the Admin to completely fill its storage space with actual data files, the store would have to be configured in some unexpected way — such as with an extraordinarily large number of tables, or have been allotted a very small Admin directory size.
The procedure that you use to change an Admin's allocated disk space differs depending on whether the Admin is in working condition.
Admin is Working
To increase or decrease the Admin's disk space when the Admin is functional, use the CLI to execute the following plan:
plan change-parameters -all-admins -params \
"configProperties=je.maxDisk=<size>"
where <size> is the desired storage size in bytes.
Admin is not Working
To increase or decrease the Admin's disk space when the Admin is not functional:
-
Set the value of
je.maxDisk
to the desired value inconfig.xml
for all Admins manually:-
For each Storage Node that is hosting an Admin, locate the
config.xml
file in the Storage Node's root directory:<kvroot dir>/<store name>/<SN name>/config.xml
and edit it as follows.
-
Locate the admin section of the
config.xml
file. This is the section that begins with:<component name="ADMIN-NAME" type="adminParams" validate="true"> ... </component>
-
Add the following line to the admin section of each
config.xml
file:<propertyname="configProperties" value="je.maxDisk=<size>" type="STRING"/>
where <size> is the desired storage size in bytes for your Admin.
-
-
Stop/start these Storage Nodes one by one, using the following commands:
Note:
Before starting the SNA, on each node, set the environment variable
MALLOC_ARENA_MAX
to1
. Doing this ensures that memory usage is restricted to the specified heap size.java -Xmx64m -Xms64m \ -jar kvstore.jar stop -root <root dir> \ -config <config file name> java -Xmx64m -Xms64m \ -jar kvstore.jar start -root <root dir> \ -config <config file name>
-
Wait for the status of these Storage Nodes to change to RUNNING. You can use the ping command to get the Storage Node status:
java -Xmx64m -Xms64m \ -jar kvstore.jar runadmin -host <host name> -port <port> ping
-
If any Admins are unreachable (you cannot get a response using the ping command), start them from the CLI using the following command:
kv-> plan start-service -service <ADMIN_NAME> -wait
-
Once all the Admins are running, execute the following command using the CLI:
plan change-parameters -all-admins -params \ "configProperties=je.maxDisk=<size>"
where <size> is the desired storage size in bytes for your Admin. This value should match the value you provided in the
config.xml
file.