On 05/24/2013 02:50 PM, Andrew Purtell wrote:
On Thu, May 23, 2013 at 5:10 PM, James Taylor <[email protected]>wrote:
Has there been any discussions on running the HBase server in an OSGi
container?
I believe the only discussions have been on avoiding talk about coprocessor
reloading, as it implies either a reimplementation of or taking on an OSGi
runtime.
Is there a benefit to restarting a regionserver in an OSGi container versus
restarting a Java process?
Or would that work otherwise like an update the coprocessor and filters in
the container then trigger the embedded regionserver to do a quick close
and reopen of the regions?
My thinking was that an OSGi container would allow a new version of a
coprocessor (and/or custom filter) jar to be loaded. Class conflicts
between the old jar and the new jar would no longer be a problem - you'd
never need to unload the old jar. Instead, future HBase operations that
invoke the coprocessor would cause the newly loaded jar to be used
instead of the older one. I'm not sure if this is possible or not. The
whole idea would be to prevent a rolling restart or region close/reopen.