Ошибка тайм-аута соединения в Cassandra даже после того, как был задан достаточно большой интервал тайм-аута (50 с)

При компиляции шаблоны должны быть созданы экземплярами , прежде чем их компилировать в объектный код. Это создание может быть достигнуто только в том случае, если известны аргументы шаблона. Теперь представьте сценарий, в котором функция шаблона объявлена ​​в a.h, определенная в a.cpp и используемая в b.cpp. Когда компилируется a.cpp, не обязательно известно, что для предстоящей компиляции b.cpp потребуется экземпляр шаблона, не говоря уже о том, какой конкретный экземпляр это будет.

Можно утверждать, что компиляторы можно сделать умнее, чтобы «смотреть вперед» для всех применений шаблона, но я уверен, что это было бы нелегко создавать рекурсивные или другие сложные сценарии. AFAIK, компиляторы этого не делают. Как заметил Антон, некоторые компиляторы поддерживают явные декларации экспорта экземпляров шаблонов, но не все компиляторы поддерживают его (пока?).

0
задан aviral sanjay 16 January 2019 в 10:38
поделиться

1 ответ

Используя партии, вы убиваете свою Кассандру. Пакеты в Cassandra используются для определенной цели, а не для отправки нескольких записей вместе (пока все они не принадлежат одному разделу) - вы можете прочитать о неправильном использовании пакетов в документации . Более эффективным способом будет использование подготовленных операторов с асинхронным выполнением запросов через execute_async: в разделе «Начало работы» документации драйвера есть примеры . В этом случае каждый запрос отправляется на компьютер, который хранит данные для определенного раздела, а не загружает узел-координатор, как в случае использования пакетов.

Другая ошибка, которую вы имеете, заключается в том, что вы готовите запрос внутри цикла - сделайте это до первого цикла for, а затем используйте подготовленный запрос внутри цикла. Вам также может потребоваться увеличить количество запросов в полете на соединение с насыщенной сетью.

P.S. Я ответил вчера на тот же вопрос, но для Java.

0
ответ дан Alex Ott 16 January 2019 в 10:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: