Из-за аномалии и ошибки в логике приложения данные записывались и удалялись несколько раз в таблицу, что приводило к очень высокому соотношению захоронения / живого звука.Это вызывало тайм-ауты чтения на стороне сервера с использованием размера выборки по умолчанию.Мой вопрос заключается в том, допускает ли изменение утверждения утверждение в обратных вызовах политики повтора, и будет ли оно иметь какой-либо эффект?Что-то вроде
public class MyRetryPolicy implements RetryPolicy {
private static final int MIN_FETCH_SIZE = 1000;
@Override
public RetryDecision onReadTimeout(Statement statement, ConsistencyLevel cl, int requiredResponses, int receivedResponses, boolean dataRetrieved, int nbRetry) {
if (receivedResponses < requiredResponses && statement.getFetchSize() > MIN_FETCH_SIZE) {
statement.setFetchSize(Math.max(MIN_FETCH_SIZE, statement.getFetchSize() / 2));
return RetryDecision.retry(cl);
} else {
return RetryDecision.rethrow();
}
}
...
Проблема касалась только определенного диапазона токенов и больше похожа на одноразовую вещь, поэтому не хотелось бы постоянно уменьшать размер выборки для всех операций чтения.