6.4. Prioritizing Other Types of Transactions

Documentation

VoltDB Home » Documentation » Guide to Performance and Customization

6.4. Prioritizing Other Types of Transactions

There are many other types of transactions besides just stored procedure calls. There are transactions associated with database replication (DR) and snapshots, as well as transactions associated with import and topics. You cannot set a priority for individual instances of these more automated transactions, but you can set a priority for them as a group or class as part of the database configuration.

You specify the priority for snapshot and DR transactions in the configuration using subproperties of deployment.systemsettings.priorities that set the priority of the respective class of transactions. For example, the following configuration sets the priority of DR transactions to 3 and snapshots to 7:

deployment:
  systemsettings:
    priorities:
      enabled: true
      dr: 3
      snapshot: 7

For import and topics, you can specify a priority for the transactions associated with individual import configurations and individual topics.You specify the priority as a subproperty of the deployment.import.configuration or deployment.topics.topic list element for that target. For example, the following configuration sets the priority for the Kafka import configuration at 3 and the priority for the alerts and misc topics at 2 and 7, respectively:

deployment:
  import:
    configuration:
    - type: kafka
      priority: 3
    [ ...]
  topics:
    topic:
    - name: alerts
      priority: 2
      procedure: catchAlerts
    - name: misc
      priority: 7
      procedure: grabBag