10.2. Special Considerations for Existing Customers

Documentation

VoltDB Home » Documentation » Upgrade Guide

10.2. Special Considerations for Existing Customers

The new features in VoltDB V15.0 add capabilities without altering the behavior of existing applications. However, there are a few changes that require action for users upgrading from earlier versions. Existing customers should take note of the following changes:

  • IMPORTANT: VoltDB V15 Requires the Volt Operator version 3.6 or Later on Kubernetes

    The new release of VoltDB requires a recent update to the Volt Operator when upgrading. Normally, this happens by default. When you use the helm upgrade command, Helm automatically upgrades the Volt Operator, and chart, to the latest version before performing the software upgrade. However, this will not happen if you explicitly identify a version for the chart using the --version argument. Although not recommended, if you must specify a chart version when upgrading to VoltDB V15, be sure to specify version 3.6 or later.

  • Changes to YAML Properties on Bare Metal

    To unify the YAML properties for both bare metal and Kubernetes, a few of the existing properties for bare metal had to be modified. This means the old property names and settings are no longer supported internally and the new names and settings are accepted in their stead. To simplify the transition, the old properties are still accepted as input when upgrading an existing database or initializing a new cluster. However, these old properties are immediately translated to their new equivalent and stored as such internally in the servers. In other words, if you initialize and start the cluster using the old property name, when you do a get of the configuration, you will only receive the new property names and settings. Therefore, we strongly recommend you update any YAML configuration files you areusing to include the new syntax.

    The properties names that have been deprecated and the replacement properties are listed in the following table.

    Table 10.1. Changes to Bare Metal Configuration Properties

    V14 PropertyV15 Property
    deployment.avro.properties.propertydeployment.avro.properties.properties
    deployment.dr.connection.preferred-sourcedeployment.dr.connection.preferredSource
    deployment.export.configurationdeployment.export.configurations
    deployment.export.configuration[target].propertydeployment.export.configurations[target].properties
    deployment.import.configurationdeployment.import.configurations
    deployment.import.configuration[target].format-propertydeployment.import.configurations[target].formatProperties
    deployment.import.configuration[target].propertydeployment.import.configurations[target].properties
    deployment.partition-detectiondeployment.partitiondetection
    deployment.security.ldap.ssl.pathdeployment.security.ldap.ssl.file
    deployment.ssl.keystore.pathdeployment.ssl.keystore.file
    deployment.ssl.truststore.pathdeployment.ssl.truststore.file
    deployment.systemsettings.resourcemonitor.disklimit.feature.*deployment.systemsettings.resourcemonitor.disklimit.*
    deployment.task.threadpools.host.*deployment.task.host.*
    deployment.task.threadpools.partition.*deployment.task.partition.*
    deployment.threadpools.pools.*deployment.threadpools.*
    deployment.topics.broker.propertydeployment.topics.broker.properties
    deployment.topics.topic[topicname].propertydeployment.topics.topic[topicname].properties
    deployment.users.user.*deployment.users.*

    In addition, a number of properties that supported a property name followed by an array of name/value pairs have been changed to a simple list of the item name as the property with the "value" as the property value. For example, the following shows the V14 and V15 representations of the deployment.topics.broker.properties property:

    Old V14 Syntax:

    deployment:
      topics:
        broker:
          property:
          - name: network.thread.count
            value: 6
          - name: cluster.id
            value: 42

    New V15 Syntax:

    deployment:
      topics:
        broker:
          properties:
            network.thread.count: 6
            cluster.id: 42

    This change applies to the following properties:

    • deployment.avro.properties

    • deployment.export.configurations[target].properties

    • deployment.import.configurations[target].formatProperties

    • deployment.import.configurations[target].properties

    • deployment.topics.broker.properties

    • deployment.topics.topic[topicname].properties

    Finally, for the system settings disk limits by feature, the feature and subproperties have been changed from a list to the feature name as a property with its attributes as subproperties. The following example demonstrates the new V15 syntax:

    deployment:
     systemsettings:
        resourcemonitor:
          disklimit:
            commandlog:
              size: 2G
              alert: 1G
            commandlogsnapshot:
              size: 2G
              alert: 1G
  • Deprecated Features Removed

    As mentioned above, several obsolete technologies that have already been deprecated have now be removed from the product and can no longer be used in V15. Specifically:

    • Passive (master/replica) database replication

    • SHA-1 hashing of passwords, in both server and client

    • The querystats directive in sqlcmd and the @QueryStats system procedure