Archived
This forum has been archived. Please start a new discussion on GitHub.
Possible late "binding" of Glacier2 to PermissionsVerifier?
joshmoore
Germany
in Help Center
Calling glacier2router before the server application has started causes a ConnectionRefusedException:
Is it possible (or could it be possible in future versions) to have glacier2 contact the permissions verifier as late as possible, such that glacier2 could always be started via init.d or similar?
glacier2 seems to be tolerant of restarting the server app, it's just the initial connection which seems problematic. Perhaps a configuration option that bypasses this sanity check (if it is one).
glacier2router --Ice.Config=resources/glacier2.config 06/23/07 13:20:02.913 error: unable to contact permissions verifier `Verifier:tcp -h 127.0.0.1 -p 9999' Network.cpp:662: Ice::ConnectionRefusedException: connection refused: Connection refused
Is it possible (or could it be possible in future versions) to have glacier2 contact the permissions verifier as late as possible, such that glacier2 could always be started via init.d or similar?
glacier2 seems to be tolerant of restarting the server app, it's just the initial connection which seems problematic. Perhaps a configuration option that bypasses this sanity check (if it is one).
0
Comments
-
I agree that it seems a bit restrictive. We'll look into changing this for a future Ice release. If you cannot arrange to start the verifier first for whatever reason you could ensure your verifier is always running first when Glacier2 is started is to load the permissions verifier into the Glacier2 router as a shared library plug-in.0
-
Thanks for looking into the startup, Matthew. As far as the plugin is concerned, our permissions verifier is in Java, so a glacier2 plugin won't work. That is, unless there were a Java-based router. Has there been any thought of one? Would it be feasible/sensible? For our purposes a collocated router could make sense and reduce the deployment complexity, which at the moment will most likely involve two separate init.d scripts.0
-
I don't think a Java based router makes sense... it would be quite a bit slower than the C++ version. Seems to me it would be easier to rewrite the permissions verifier in C++ than rewrite the entire router in Java An alternative would be to use IceGrid and launch the verifier on demand as an IceGrid service. You can also manage Glacier2 from IceGrid -- except you cannot launch on demand. Instead you would have IceGrid start it up all the time.0
-
I'll look into starting Glacier2 from IceGrid. Thanks, Matthew.0