synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eric Hubert (JIRA)" <>
Subject [jira] Commented: (SYNAPSE-537) Possibility to put server in maintenance mode and reload synapse configuration via JMX
Date Fri, 01 May 2009 15:07:30 GMT


Eric Hubert commented on SYNAPSE-537:

Ruwan, you are correct in all of the above.

Sorry for a), I need to tweak my settings of my specific Synapse workspace regarding line
length. I'm used to 120 chars, so this slipped through.

Regarding b) I changed the class and forgot to remove the private constructor. It is indeed
now useless.

Same applies to the method stopGraceful. I removed it from the interface, but forgot to remove
it from the implementation. I first started to delegate the whole functionality to the controller,
but realized, that statemanagement ist in ServerManager. So I splitted the operations of switching
to maintanence mode and stopping the server and combine it only in the ServerManager. So you
are right this method can and should safely be removed.

Thanks for the review so far! 

> Possibility to put server in maintenance mode and reload synapse configuration via JMX
> --------------------------------------------------------------------------------------
>                 Key: SYNAPSE-537
>                 URL:
>             Project: Synapse
>          Issue Type: New Feature
>          Components: Core
>    Affects Versions: NIGHTLY
>            Reporter: Eric Hubert
>            Assignee: Ruwan Linton
>             Fix For: 1.3
>         Attachments: ServerManager.patch
> Unfortunately I did not find the old issue we had for this, so I created a new one. The
provided patch extends the existing server states with a maintenance state. While entering
the maintenance mode all transports supporting a pause operation are paused. So no new requests
will be accepted. Once all requests in progress are finished the server can be safely restarted
to load a changed configuration. If running in a clustered environment behind  a loadbalancer
this allows dynamic configuration updates. 
> All server state changes can be triggered via JMX using an extended ServerManagerMBean
which can also be used to query the current server state.
> While working on this patch I thought about moving some of the classes in the synapse
top level package to a new server subpackage. I actually did not perform this change to ease
the review, but I still think it would be a good idea.
> So what about moving the following classes:
> Axis2SynapseController
> JmxAdapter
> ServerConfigurationInformation
> ServerConfigurationInformationFactory
> ServerContextInformation
> ServerManager
> ServerState
> ServerStateDetectionStrategy
> SynapseController
> SynapseControllerFactory
> SynapseServer
> to 
> synapse.server
> and
> ServerManagerView
> ServerManagerViewMBean
> to
> synapse.server.mbean (maybe also renaming them to ServerManagerControl and ServerManagerControlMBean.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message