在 Ubuntu 22.04/Ext4 上,我设置了 2 个 Apache Ignite 2.15 集群(“A”和“B”),并且 CDC:
ignite-cdc.sh
正在运行 - 我将键/值放入集群 A,然后将它们传播到 B。 !
我尝试在 Windows 10/NTFS 上执行相同的操作,但不太有效。在
ignite-cdc
启动时,键/值已发送,但我没有收到 CdcEvent
,并且不会传播进一步的键/值放置。
我做错了什么以及如何调试?
详情:
在两台具有 Ext4 文件系统的 Ubuntu 22.04 PC 上,我设置了 2 个 Apache Ignite 2.15 集群(“A”和“B”),在其中一个集群上,我设置了最简单的工作 CDC(集群“A”的 CDC 成为瘦客户端)簇“B”):
defaultDataRegionConfiguration
与 <property name="CdcEnabled" value="true"/>
+ <property name="persistenceEnabled" value="true"/>
和 <bean class="org.apache.ignite.cdc.CdcConfiguration">
使用指向集群“B”的 IgniteToIgniteClientCdcStreamer
的 Addresses
消耗事件。它有效 - 只要 ignite-cdc.sh
正在运行,我就会将键/值放入集群 A,并将它们传播到 B。
在 Windows 10 (NTFS) 上,我启动
.bat
相当于 ignite-cdc.sh
;并且它在启动时将键/值对从“A”复制到“B”,但在ignite-cdc
启动后将键/值对插入到“A”时则不会。我确实看到 .wal
文件时间戳发生了变化,所以我猜持久性正在发挥作用,但我没有收到
CdcEvent
s。您的配置中是否有用于复制的缓存列表?