【问题标题】:Axon - PostgreSQL - Where is the payload in the event store?Axon - PostgreSQL - 事件存储中的有效负载在哪里?
【发布时间】:2021-03-23 14:51:31
【问题描述】:

我目前正在 PostgreSQL 中使用 Axon-framework 设置一个事件存储(spring boot、axon-spring-boot-starter、axon-server-connector 从依赖项中删除)。

系统按预期加载,我可以看到命令、事件和事件处理程序按预期工作。

问题是当我想在事件表 (domain_event_entry) 中查看我的事件内容时。

我希望表中的“有效负载”列包含我在事件存储中保存的所有事件,但我只看到数字:像这样:

global_index |事件标识符 |元数据 |payload_type | 1 | 7c23e693-558b-4013-b64f-3f272cb0102a |19435 |19436|

另外,我认为元数据应该包含除整数以外的其他内容。

这是正确的吗?我是否缺少一些额外的配置?

【问题讨论】:

  • 正如 Yvonne 所说,这是 PostgreSQL 的问题。作为一种优化,它将 (B/C)LOB 移动到不同的表中,用所谓的 OID(对象标识符)替换它们。因此,您无法了解 BLOB 中存储的内容。 Yvonne 分享的博客清楚地解释了如何缓解这个问题。

标签: postgresql spring-boot axon axon-framework


【解决方案1】:

这是因为 Postgres 使用了 TOAST(超大属性存储技术)。如何使这个更好的可读性可以在这个blogpost

中找到

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-17
    • 1970-01-01
    • 1970-01-01
    • 2021-12-11
    相关资源
    最近更新 更多