[ https://issues.apache.org/jira/browse/CASSANDRA-14435?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16490609#comment-16490609 ]
Stefan Podkowinski commented on CASSANDRA-14435: ------------------------------------------------ As already pointed out in this discussion, we need to be careful to avoid contention around the JMX notification (ring) buffer. I've now changed the approach implemented in this ticket to stop broadcasting events as part of JMX notifications directly. Instead, notifications will only be used to announce the last (greatest) ID for each event type. Clients will be able to detect if new events will be available by keeping a local list of IDs and subscribe to notifications with ID updates. To make this work, IDs must be monotonically increasing and comparable (e.g. Long or TimeUUID). As notification on updated IDs will be broadcasted periodically, missing notifications isn't an issue and the full list of IDs will be received on the next broadcast interval. The actual events will be available through a standard MBean method call, which accepts the event ID of the client's last retrieved event and sends a limited number of events newer since the provided ID. This call can be remotely polled until the latest event has been retrieved. > Diag. Events: JMX events > ------------------------ > > Key: CASSANDRA-14435 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14435 > Project: Cassandra > Issue Type: New Feature > Reporter: Stefan Podkowinski > Assignee: Stefan Podkowinski > Priority: Major > Fix For: 4.x > > > Nodes currently use JMX events for progress reporting on bootstrap and > repairs. This might also be an option to expose diagnostic events to external > subscribers. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org