我有一个应用程序处理来自 PostgreSQL 服务器的逻辑复制输出。我们使用 pgoutput 插件从复制槽创建发布和读取数据。
Postgres 具有各种用于逻辑复制的消息格式,如下所述:https ://www.postgresql.org/docs/10/protocol-logicalrep-message-formats.html
目前,我处理关系消息以获取处理插入、更新和删除所需的大部分信息。但是,对于类型信息,我目前使用 SQL 查询来获取列类型信息。我想使用 Type 消息,但我从来没有看到它们。我看到 Begin、Commit 等,但从来没有 Type。
- 服务器何时生成和发送 Type 消息?
- 有没有办法让它们生成?
- 这些类型 id > 类型映射是一成不变的,还是 PostgreSQL 允许服务器具有自定义类型(我注意到命名空间是与类型一起发送的属性之一)?
非常感谢任何帮助-谢谢。