dhconfig routing
The routing (or datarouting) configuration data type of the dhconfig tool is used to work with the data routing configuration.
Note
Many Deephaven processes respond dynamically to data routing configuration changes.
As with other dhconfig configuration data types, the --help argument provides detailed information on the available actions and arguments, as well as usage examples. Use --help whenever you need more information about the available actions. For example, if you want information about the import action, you can run:
Which prints the following:
...followed by a description of all of the subcommand's arguments and some usage examples.
Due to the number of available actions and combinations, an exhaustive list of all possible commands is not provided here. Instead, we will give some usage examples and recommend that you use the --help argument as needed for more information.
Examples
export
Print the data routing configuration:
Export data routing configuration to /tmp/routing.yml:
import
Note
Import actions require authentication, with sudo, --key, or --user.
Unless the --etcd option is used, the authenticated user must be in the superusers group (iris-superusers by default) or in a group authorized for data routing service changes via by the DataRoutingService.writers property, which must be visible to the configuration server:
Import data routing configuration from /tmp/routing.yml:
Import data routing configuration from /tmp/routing.yml, bypassing configuration server (requires sudo):
| Argument | Description |
|---|---|
--file <arg> | Name of a file to import/update. Optional; defaults to property DataRoutingService.configFile or routing_service.yml. |
--ignore-errors | Import even when non-fatal validation issues are detected. Use with caution. |
Note
A whereLocationKey filter that references InternalPartition must also account for the aggregate-key placeholder (TableLocationKey.NULL_PARTITION), otherwise DIS truncate/delete commands routed through that DIS will be rejected. The import will fail unless the filter includes a clause such as InternalPartition == TableLocationKey.NULL_PARTITION || ..., or unless --ignore-errors is supplied. See the whereLocationKey section of the YAML reference for details.
Note
You cannot use dhconfig routing to validate or import both the main routing configuration file and additional, separately managed DIS files in a single command. If you need to work with both at once, use dhconfig dis with the --routing-file option.
For example:
validate
Check /tmp/routing.yml for errors: