сервис и графиках количество кликов правильное
Специально даже паралельно сохраняю в postgres клики и туда все долетает
Запрос в логи показывает тоже правильные цифры, что все клики прилетели
SELECT count(*)
FROM system.query_log
WHERE type = 'QueryFinish'
AND query_kind = 'Insert'
AND tables = ['clicks']
AND query_start_time > '2022-07-13 09:00:00';
Но в таблице часть кликов не доехала
Подскажите можно ли в где то посмотреть логи вставок в таблицу?
Может в чем то другом дело?
есть такая штука как дедупликация вставки https://kb.altinity.com/altinity-kb-schema-design/insert_deduplication/
Спасибо, но нашел проблему, спец символ попадал в строку (Code: 62. DB::Exception: Cannot parse expression of type LowCardinality(String) here: 'd'Azur') Но все равно вопрос, как смотреть такие логи для асинхронных вставок? Поменял в приложении запись построчно без async и эта ошибка записалась в system.query_log А вот при async_insert, не могу найти где такие ошибки пишутся
так не должен такой инсерт проходить даже асинхронный или у вас fire and forget ?
system.asynchronous_inserts ?
fire and forget нет Я про то что хочу видеть логи ошибок при асинхронной вставке
Там пусто, но наверное как то можно включить логи туда?
не воспроизводится echo "insert into insert_test values (1, 'aaa'a')"|curl 'http://localhost:8123?async_insert=1' --data-binary @- Code: 62. DB::Exception: Cannot parse expression of type LowCardinality(String) here: 'aaa'a') : While executing WaitForAsyncInsert. (SYNTAX_ERROR) (version 22.7.1.1054) echo "insert into insert_test values (1, 'aaa'a')"|curl 'http://localhost:8123?async_insert=1&wait_for_async_insert=0' --data-binary @-
Удивительно, у меня все также не выдается Я пробую CREATE TABLE IF NOT EXISTS tests ( id String, value LowCardinality(String), sign Int8, version UInt64 ) ENGINE = VersionedCollapsingMergeTree(sign, version) ORDER BY (id); echo "insert into tests values ('id1', 'aaa'a', 1, 443443)"|curl 'http://localhost:8123?async_insert=1&wait_for_async_insert=0' --data-binary @-
wait_for_async_insert=0 --- ?
Да, но сейчас пробую на самой свежей версии Была 22.3
нет, это так и задумано, чего вы хотите от wait_for_async_insert=0 он сразу возвращает управление любой мусор можно инсертить
If true wait for processing of asynchronous insertion Ааа, получается надо наоборот 1 ставить
Да сейчас показывает, спасибо
Обсуждают сегодня