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.