Changes in 11gR2.1.2.123

The following changes were made in Oracle NoSQL Database 11gR2.1.2.123.

Bug fixes

  1. Previously, executing a change-repnode-params plan in order to change Replication Node parameters for a node other than the one running the Admin service would fail. This operation will now succeed. [#20901]

  2. A deploy-storage-node plan which ran into problems when attempting to deploy a new storage node would leave the problematic SN in the store. This would require that the user either take manual action to remove the bad SN, or fix the problem and retry the plan. For convenience, the deploy-storage-node plan will now clean up if it runs into errors, and will not leave the failed SN behind. [#20530]

Performance and Other General Changes

  1. The command line interface's snapshot create command has been made significantly faster. Previously, it could take minutes if executed on a store with a large amount of data. This should be reduced to seconds. [#20772]

Utility Changes

  1. The two scripts for starting kvlite and executing control commands, bin/ and bin/kvctl, have been replaced by a java -jar lib/kvstore-M.N.P.jar command. This provides portability to all Java platforms, including Windows. The two scripts are deprecated, but will be supported for at least one release cycle.

    The translation from the old script commands to the new -jar commands is as follows:

    Old script command New -jar command
    bin/ args... java -jar lib/kvstore-M.N.P.jar kvlite args...
    bin/kvctl command args... java -jar lib/kvstore-M.N.P.jar command args...

    There are a few differences to be aware of between the old and new commands.

    • nohup, if desired, must be explicitly specified. In the bin/kvctl script, nohup was added automatically for the start and restart commands. To specify the equivalent command, use:

      nohup java -jar lib/kvstore-M.N.P.jar start args... > /dev/null < /dev/null 2<&1 &
    • The logging configuration file for kvlite is now specified using standard Java syntax. Previously, the examples/ configuration file was added automatically when passing -logging to the script. The new equivalent is:

      java -Djava.util.logging.config.file=examples/ -jar lib/kvstore-M.N.P.jar kvlite args...
    • Previously, the -host argument defaulted to the local machine name (via the `hostname` command) when running the kvctl script. Now, for all control commands, no default hostname is used and the -host argument must be specified explicitly. This change was made for two reasons: 1) consistency, since the port and other arguments have no default value for control commands, and 2) safety, since specifying an explicit hostname guards against accidental errors.

    • Previously, the -host argument defaulted to localhost when running the script. Now, the default is the local machine name rather than (literally) localhost. Note that the kvlite command, unlike the control commands, has default values for all arguments. This is because the kvlite command is designed for ease-of-use during development on a single machine. kvlite should not be used in production or for performance testing.

    • Previously, running java -jar lib/kvstore-M.N.P.jar, with or without arguments, printed the product version. Now, if no arguments are specified, a usage message is printed. To print the version, use the version command:

      java -jar lib/kvstore-M.N.P.jar version