Hello all,

Yesterday I changed some code in the MMObjectBuilder to quick fix an issue I encountered. I had created a sutuation where my eventlistener was already called before the NodeCache was updated. The storage layer already changed the database, but I was getting my old values back.

Based on this issue, I think, there are two moments in time when different EventListeners should be called. One is in the storage layer where caches should be flushed when the storage layer changes the database. The second is AFTER the commit in the core (MMObjectNode/MMObjectBuilder) when everything in the core itself is updated. Custom Listeners and the cluster listeners belong to the latter one. Actually, I still don't understand why we flush the caches through the event system instead of telling them directly.

Nico

_______________________________________________
Developers mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/developers

Reply via email to