Я использую библиотеку libpq в C для доступа к моей базе данных Postgresql. Приложение вставляет часть данных, подаваемых из очереди. Когда есть много данных, и он очень быстро вставляет, он случайным образом вставляет и пустую строку в таблицу. Прежде чем я даже выполню вставку, я проверяю, чтобы длина вставляемого текста была больше, чем одна. Есть ли причина, почему это происходит случайно? Это случается, когда данных меньше.postgresql libpq, вставляющий пустую строку без причины
* Я хотел бы отметить, что это не происходит на Mysql, только комментарий PostGreSQL
Добавьте ограничение проверки в таблицу, где это необходимо, и дождитесь (неизбежной) ошибки из БД. –
Является ли это многопоточным? Используете ли вы асинхронные вызовы pg? Вы повторно используете входные буферы? –