[ 
https://issues.apache.org/jira/browse/CASSANDRA-14435?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16462475#comment-16462475
 ] 

Stefan Podkowinski commented on CASSANDRA-14435:
------------------------------------------------

{quote}While I think its a good idea here, we should probably at least have a 
note in yaml about enabling it may impact operational tooling if using 
broadcaster. With the shared event buffer (1000), the more we use it (even if 
no one is listening to that mbean's events) the more lost notifications will 
occur. On an active node we already end up losing a lot of events if the client 
is anywhere with relevant latency from the node. Increasing the buffer isn't 
really a good option as it puts massive pressure on the heap as the composite 
data objects (particularly streaming ones) are huge.
{quote}
JMX surely isn't the most scalable and robust eventing solution. But any diag. 
event consumers would also fall into the "operational tooling" category and 
tool creators and users should be aware of latency and contention based 
limitations. It's not ideal, but selectively sending infrequent events should 
hurt that much either.

We can always improve form here and work on a more scalable long term solution. 
Maybe something based on chronicle queue with a CQL streaming extension and/or 
virtual tables on top. But that's not strictly related to diagnostic events and 
shouldn't prevent us from continue to use JMX until we have another solution.
{quote}Once of the issues I can see is that events are sent on the current 
thread, ref NotificationBroadcasterSupport.defaultExecutor.
{quote}
I've pushed a commit 
[here|https://github.com/spodkowinski/cassandra/commit/c7df1333e84f5b91ebe61161ab4d669fe8da9b32]
 to share the same executor introduced in CASSANDRA-12146.

> 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

Reply via email to