[Bro-Dev] serialization problems
jsiwek at ncsa.illinois.edu
Thu Jun 23 08:55:21 PDT 2011
> > After enabling the serialization debug logs, I think what I'm
> > seeing is that the first event is serialized with the full table value,
> > but the second event is serialized with just a reference to the first's
> > even though that value has changed.
> Yes, that's exactly what's happening. Generally, the serialization
> framework sends an object only the first time, and from then on sends
> just references to it (i.e., unique IDs).
Ok. And I think it also makes more sense to me when I think about it in the context of how the serialized events will be replayed -- against the same given input with `bro -R`, the values should actually come out to be the same.
But the simple example I gave doesn't really show what's happening with the istate.events test in policy-scripts-new like I thought it did...
I think what's happening there is that the sender serializes events as expected into events.bst with references as appropriate, but for a given event the receiver serializes the full value into its events.bst. So when both sides read back their version of events.bst, some values actually differ. I could be wrong, though, the serial debugging log was pretty hard to read with that complex of a situation.
I'll commit my current version of the test that's failing to policy-scripts-new and maybe you can take a look, else I'll try to come up with another simple example.
More information about the bro-dev