我有一个成员,它有一个读/写数据库的MapStore / Loader,还有一个添加了EntryAddedListener监听器的客户端。
如果成员被退回,我会看到条目添加的侦听器被触发,因为MapLoader从数据库重新加载数据。
然而,这表明客户已经添加了新条目,而事实上,它们只是被添加了#34;因为节点自举。
基本上我不希望这些侦听器因MapLoader引导地图而被解雇 - 它们只能在之后被解雇。
如何阻止这些MapLoader事件触发EntryAdded侦听器?
答案 0 :(得分:2)
没有办法做到这一点。 使用MapLoader加载条目基本上是在地图中添加条目。
您可以做的是在加载地图后添加这些侦听器。 如果您的loadingMode设置为EAGER,则可以很容易地确定加载完成的时间。
为了等到加载完成,您可以调用map.size()操作。完成后,地图就会完全填充。
答案 1 :(得分:-1)
可以区分从Hazelcast v3.11开始的ADD和LOAD事件。此功能是hazelcast-13181问题的一部分。
另外,您可能想查看Java文档中的EntryAddedListener和EntryLoadedListener以获得更多详细信息。