Где я могу найти полный список параметров слотов репликации в PostgreSQL? - PullRequest
1 голос
/ 06 марта 2019

Я работаю над логической репликацией PG с помощью Java и нахожу демонстрацию по jdbc драйверу docs

PGReplicationStream stream =
        replConnection.getReplicationAPI()
            .replicationStream()
            .logical()
            .withSlotName("demo_logical_slot")
            .withSlotOption("include-xids", false)
            .withSlotOption("skip-empty-xacts", true)
            .start();

тогда я могу разобрать сообщение из потока.

Этого достаточно для некоторых ежедневных нужд, но теперь я хочу знать время фиксации транзакции.

С помощью вопрос по stackoverflow, я добавляю .withSlotOption("include-timestamp", "on"), и он работает.

У меня вопрос, где можно найти полный список «опций слотов», чтобы их было очень удобно найти вместо поиска по Google или StackOverflow.

1 Ответ

1 голос
/ 06 марта 2019

Доступные параметры зависят от подключаемого модуля логического декодирования слота репликации, который указывается при создании слота репликации.

В примере должен использоваться плагин test_decoding, который включен в PostgreSQL в качестве модуля contrib для тестирования и игры.

Доступные опции для этого плагина не документированы, но их можно найти в исходном коде :

  • include-xids: включить номер транзакции в BEGIN и COMMIT output
  • include-timestamp: включает информацию о метке времени с COMMIT выводом
  • force-binary: указывает, что режим вывода является двоичным
  • skip-empty-xacts: ничего не выводить для транзакций, которые не изменили базу данных
  • only-local: вывод только данных, у которых источник репликации не установлен
  • include-rewrites: включить информацию из переписанных таблиц, вызванных операторами DDL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...