Я пытаюсь прочитать определенные данные из базы данных. И выполнение запроса, чтобы получить результат. Я выполняю код в цикле while (true), чтобы повторять операцию снова и снова.
В некоторых итерациях я получаю результат, но в некоторых случаях он показывает com.datastax.driver.core.exceptions.TraceRetrievalException и не может получить время выполнения запроса.
Кассандра версия-3.11.4, Datastax версия-3.7
Исключение:
com.datastax.driver.core.exceptions.TraceRetrievalException: Unable to retrieve complete query trace for id bf7902b0-5d26-11e9-befd-d97cd54dc732 after 5 tries
at com.datastax.driver.core.QueryTrace.doFetchTrace(QueryTrace.java:242)
at com.datastax.driver.core.QueryTrace.maybeFetchTrace(QueryTrace.java:176)
at com.datastax.driver.core.QueryTrace.getDurationMicros(QueryTrace.java:105)
at com.cassandra.datastax.DatastaxTestBootstrapper.lambda$0(DatastaxTestBootstrapper.java:227)
at java.util.Collections$SingletonList.forEach(Collections.java:4822)
at com.cassandra.datastax.DatastaxTestBootstrapper.readData(DatastaxTestBootstrapper.java:227)
at com.cassandra.datastax.MultipleThread.run(MultipleThread.java:13)
at java.lang.Thread.run(Thread.java:748)
Можно ли как-то преодолеть это исключение или я могу увеличить количество повторных попыток для получения полной трассировки запроса?
Statement statement1 = new SimpleStatement(
"SELECT * FROM keyspace.table where key='405861500500033'").enableTracing();
ResultSet resultSet = session.execute(statement1);
resultSet.getAllExecutionInfo()
.forEach(e -> System.out.println("time : " + e.getQueryTrace().getDurationMicros()));