Discussion:
[omniORB] omniArchive: corba recording/playback tool
Mark Janes
2007-01-16 04:40:21 UTC
Permalink
Hello,

I am publishing a general omniOrb tool which has been helpful in
debugging interactions between the corba components that I have worked on.

I am wondering if anyone has tips on how I can best make it available to
omniOrb users.

The tool compiles omniOrbPy implementations for interfaces in the user's
idl files. The implementations leverage gnosis utilities to archive
each interface call, and its parameters, in xml.

The xml can be used to reproduce the corba calls at a later date, or to
inspect them for bugs. Reproducing the calls is done via the gnosis
utils, which enable the xml to be re-hydrated into working omniOrbPy
objects. This provides a "playback" mode for the recorder.

The python recorder implementations forward calls to the actual
implementation after archiving them, effectively logging all aspects of
an interface on a running system, without interruption.

My colleagues and I have used this tool to debug corba interfaces during
system integration, and to create unit test cases for interfaces.

This approach has been very effective, and has fundamentally altered the
way test and integration take place in our organization.

I still have some work to do refining the code; it implements a
subscriber/publisher feature which is particular to our interfaces, and
it needs a general code cleanup. I also need to create some generic
examples for it, and create a distribution tarball.

You can take a look at what I currently have at:

http://omniarchive.svn.sourceforge.net/viewvc/omniarchive/trunk/

the omniidl backend is src/omniArchive.py

the executable that runs the generated classes is bin/omniArchive

I would appreciate your feedback:

* How can I improve this tool?
* Is this tool appropriate for inclusion in the omniOrb distribution?
* Is there a better way to make this tool available to omniOrb users?

thank you for your time,

Mark Janes
Duncan Grisby
2007-01-28 22:24:00 UTC
Permalink
Post by Mark Janes
I am publishing a general omniOrb tool which has been helpful in
debugging interactions between the corba components that I have worked
on.
Sorry I haven't replied about this sooner. It looks like a very useful
tool.

I think it might well be a good idea to include it in the omniORB
distribution at some point. However, I get the impression that it is
likely to go through quite a lot of revisions quite quickly not that
you've unleashed it on the world. I think that will be harder if it's in
the omniORB distribution, since its release schedule will be affected by
omniORB's (slow) schedule.

I think that for the time being, the separate Sourceforge project you've
created for it is the best thing to do. I'll add a link to it from the
omniORB web pages if you want.

Cheers,

Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Mark Janes
2007-01-30 04:31:39 UTC
Permalink
Thanks for your advice. I hope to find time in the in the near term to
complete the features that have been suggested. I will post updates to
the omniArchive project and notify this list, in case anyone would like
to try out the new stuff.

Is there a schedule for submissions to a subsequent omniORB release?
What date should I target my work for to have a realistic chance of
getting it included?

thanks,

Mark
Post by Duncan Grisby
I think it might well be a good idea to include it in the omniORB
distribution at some point. However, I get the impression that it is
likely to go through quite a lot of revisions quite quickly not that
you've unleashed it on the world. I think that will be harder if it's in
the omniORB distribution, since its release schedule will be affected by
omniORB's (slow) schedule.
I think that for the time being, the separate Sourceforge project you've
created for it is the best thing to do. I'll add a link to it from the
omniORB web pages if you want.
Cheers,
Duncan.
Loading...