 |
|
|
Oct 26 1999. |
Binding Manager madness
|
The Binding Manager
is evil, good got that out of your system? The Binding
Manager stored lots of information about the ODL definition to
class mapping in a class method as meta-data. Later when we needed
that information it just pull it from the class method and away
we go, or do we, what if we change the targeted class? What if
we use Envy to load a new definition of the class. Sudden death
lurks. Not only that the Binding Manager makes copies of the
data in tables its got... Synchronization?
To solve this problem one must ensure you
sync the Binding Manager's information with the class and ensure
we reinitialize some Binding Manager's objects when Envy loads
a class in question. Envy does have a class side method on the
application definition to allow for that.
Many times we failed to do this, this caused
no end of problems when objects were created on a targeted image,
then crashed when the Binding Manager no longer was in sync with
the actual class definition.
My mantra was if it fails in the marshaler
then you have the Corba Type wrong. If it fails in the unmarshaler
then you have the Binding Manager information wrong.
|