#c #postgresql
#c #postgresql
Вопрос:
Я использую функции C API PQprepare
и PQexecPrepared
для вставки данных в PostgreSQL частота составляет 10-100 / с, причем каждый оператор insert содержит 100 строк.
Что меня смущает, так это то, что данные, которые я только что вставил, не могут быть выбраны. Примерно через 1-3 минуты я могу выбрать данные.
Например, я вставляю некоторые данные в 18:00, и в моей программе на C PQresultStatus
возвращается значение success, а затем я выбираю их одновременно, результат — ничего. Через несколько минут я могу выбрать данные.
Я хочу знать, есть ли очередь или другие вещи в PostgreSQL, когда я вставляю данные с высокой частотой.
Ответ №1:
Есть две возможности:
- Вы не фиксируете транзакцию вставки сразу. Это было бы ошибкой в вашем приложении.
- Ваш запрос выполняется на резервном сервере, и изменения там еще не применены.