[
https://issues.apache.org/jira/browse/IGNITE-28701?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vyacheslav Koptilin updated IGNITE-28701:
-----------------------------------------
Labels: ignite-3 (was: )
> CacheEntryListener / IgniteEvents: no per-cache event listeners in Ignite 3.x
> -----------------------------------------------------------------------------
>
> Key: IGNITE-28701
> URL: https://issues.apache.org/jira/browse/IGNITE-28701
> Project: Ignite
> Issue Type: Bug
> Environment: Apache Ignite:3.1.0 (migrated from 2.17.0)
> JDK:Java 21 (LTS)
> - Topology: Multi-node clusters; production target is 2–3 node SharedNothing
> with both
> in-memory (`aimem`) and persistent (`aipersist`) storage profiles. We also
> run a single
> embedded-node mode for inference workloads.
> - Control plane: Notifications must propagate **across all nodes** of the
> cluster on every
> mutation — agent registry changes, master election, hot deployment events,
> etc. The 2.x
> `CacheEntryListener` fired on every node that hosted a partition; the 3.x
> compute-broadcast
> workaround has at-most-once semantics and is augmented with a safety-net
> poll
> (`be.ignite.controldao.safety.poll.interval.ms`, default 30 s) to recover
> dropped broadcasts.
> - Latency SLA: CEP rules require sub-second reaction to control-plane
> changes. Polling at
> 1 s is a regression from 2.x event-driven (≈0 latency) behavior.
> Reporter: Kratika Agrawal
> Priority: Major
> Labels: ignite-3
>
> I think this is a major road block in migration this is affecting continuous
> query ,eviction ,control table poll etc.
> Ignite 2.x had two well-defined listening surfaces:
> - `CacheEntryListener<K,V>` — JCache-compliant per-cache `onCreated` /
> `onUpdated` / `onRemoved`
> callbacks registered via
> `CacheConfiguration.addCacheEntryListenerConfiguration(...)`.
> - `Ignite.events().localListen(...)` — node-local distributed event listener
> with `EventFilter`
> for fine-grained filtering.
> Both are removed in 3.1.0. The Ignite 3 docs suggest "use compute jobs or
> partition-based
> streaming" but neither replaces the synchronous, per-key callback semantics of
> `CacheEntryListener`.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)