Как установить уровень согласованности для всех запросов, используя драйвер Cassandra Java? - PullRequest
1 голос
/ 29 апреля 2020

В более ранней версии я бы сделал что-то вроде этого:

QueryOptions queryOptions = new QueryOptions();
queryOptions.setConsistencyLevel(ConsistencyLevel.LOCAL_ONE)
cluster = Cluster.builder()
        .withQueryOptions(queryOptions)
        ...
        .build();

Я не могу найти способ сделать это с DataStax Java Драйвер 4.2

Ближайший, я мог найти это

boundStatement.setConsistencyLevel(ConsistencyLevel.LOCAL_ONE);

но я хотел бы установить уровень для всех запросов.

1 Ответ

2 голосов
/ 29 апреля 2020

В Java драйвере 4.x настройка выполняется другим способом - вы либо задаете параметры конфигурации в файле application.conf (предпочтительный метод), либо задаете его программно через DriverConfigLoader.programmaticBuilder (в основном полезно для сборщиков инструментов). Подробности см. В документации по . .

. В вашем случае вам необходимо указать значения для следующих параметров конфигурации (подробности см. ссылка на конфигурацию , также в источнике ). код ):

  • datastax-java-driver.basic.request.consistency для «обычных» запросов;
  • datastax-java-driver.basic.request.serial-consistency для легких транзакций;

PS Лучше обновить до последней версии - вчера вышла 4.6.0 ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...