Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 5108776
Votes 0
Synopsis Add reliable event handling to the JMX API
Category jmx:classes
Reported Against 1.5 , b10 , mustang
Release Fixed 7(b34)
State 10-Fix Delivered, request for enhancement
Priority: 4-Low
Related Bugs 6446447 , 6491377 , 6598156 , 6663757 , 6732037 , 4718351 , 5072268
Submit Date 29-SEP-2004
Description
The JMX API and JMX Remote API define clear semantics for notifications.  If you listen for notifications remotely, you are guaranteed either to receive all the notifications you are listening for, or to be told that you may have missed some.

This guarantee is not necessarily enough, although ultimately it is never possible to provide an absolute guarantee of anything better.

The JMX API could define an event-handling mechanism with greater reliability.  One possibility would be an event-handling MBean that receives all notifications sent by other MBeans in the same MBean Server.

This MBean could do two things with those notifications, not mutually exclusive.  One would be to maintain a list of interested clients, and store up the notifications for each client until the client claims them.  A complete end-to-end acknowledgement would ensure that a client that fails after receiving a notification but before handling it does not lose that notification.  The behaviour of the MBean in this scheme is not very different from the existing fetchNotifications mechanism defined by the standard connectors in the JMX Remote API, but since the MBean knows which notifications are still of interest it can respond better to heavy notification traffic.  The fetchNotifications mechanism has to hold on to all notifications for as long as it can, because by design it never knows when a notification is no longer of interest to anyone.

The second possibility would be for the event-handling MBean to have pluggable treatment of notifications.  For example, you could plug in a JMS bridge that would send notifications of interest to a JMS topic or event queue.  Because JMS is not part of the J2SE platform, such a bridge could not be supplied by default.
Work Around
N/A
Evaluation
May be somewhat ambitious for Mustang.  Have not yet received feedback indicating real problems with the existing remote notification architecture defined by the JMX Remote API.
  xxxxx@xxxxx   2004-09-29
One real problem that people have signaled with the existing remote notification architecture is that, with the RMI or JMXMP connector, a client must maintain a permanently open connection to every server it wants to get notifications from.  If it is connected to hundreds of servers, then it has hundreds of open connections, even if notifications are very rare.  The ability to use something like JMS here would be very valuable.
Posted Date : 2005-09-14 14:34:51.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang