MMBase

Serialization can corrupt MMBase database

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Critical Critical
  • Resolution: Cannot Reproduce
  • Affects Version/s: 1.8.3
  • Fix Version/s: 1.8.6
  • Component/s: Core
  • Description:
    Hide
    When MMBase serializes the bridge cloud when closing an application server, there is a risk that it restarts MMBase while doing so. For some raeson, the restarted MMAbse does not recognize buidlers already present in the typedef builder, and starst making new records, assigning new objecttypes.
    This corrupts the database (specifically the typedef, versions, and daymerks tables) with false data.
    After restart MMBase may use the wrong otypes, and can then not properly access data.
    On some environments this happens after every server restart - the cause is unclear.

    For the moment, I turned off serialization by making Cloud unserializable. This at least prevents the corruption, though ofcourse serialization no longer works.
    Show
    When MMBase serializes the bridge cloud when closing an application server, there is a risk that it restarts MMBase while doing so. For some raeson, the restarted MMAbse does not recognize buidlers already present in the typedef builder, and starst making new records, assigning new objecttypes. This corrupts the database (specifically the typedef, versions, and daymerks tables) with false data. After restart MMBase may use the wrong otypes, and can then not properly access data. On some environments this happens after every server restart - the cause is unclear. For the moment, I turned off serialization by making Cloud unserializable. This at least prevents the corruption, though ofcourse serialization no longer works.
  • Environment:
    Tomcat 5

Issue Links

Activity

Repository Revision Date User Message
MMBase SVN #22652 Thu Mar 01 09:52:03 CET 2007 pierre I turned off serialization by making Cloud unserializable. This at least prevents the corruption, though ofcourse serialization no longer works. see bug MMB-1401
Files Changed
MODIFY /mmbase/branches/MMBase-1_8/src/org/mmbase/bridge/implementation/BasicCloud.java
Repository Revision Date User Message
MMBase SVN #25572 Fri Oct 12 13:53:08 CEST 2007 michiel MMB-1401, MMB-1524, MMB-1523
Files Changed
MODIFY /mmbase/branches/MMBase-1_8/src/org/mmbase/bridge/implementation/BasicTransaction.java
MODIFY /mmbase/branches/MMBase-1_8/src/org/mmbase/bridge/implementation/BasicCloud.java
Repository Revision Date User Message
MMBase SVN #25573 Fri Oct 12 14:01:11 CEST 2007 michiel MMB-1401, MMB-1524, MMB-1523
Files Changed
MODIFY /mmbase/trunk/src/org/mmbase/bridge/Cloud.java
MODIFY /mmbase/trunk/src/org/mmbase/bridge/implementation/BasicCloud.java
MODIFY /mmbase/trunk/src/org/mmbase/bridge/implementation/BasicTransaction.java
Repository Revision Date User Message
MMBase SVN #28047 Sat Apr 12 12:43:14 CEST 2008 nklasens MMB-1401 Serialization can corrupt MMBase database

Shutdown MMEvents probe and builder
Files Changed
MODIFY /mmbase/trunk/src/org/mmbase/module/core/MMBase.java
MODIFY /mmbase/trunk/src/org/mmbase/module/builders/MMEvents.java
MODIFY /mmbase/branches/MMBase-1_8/src/org/mmbase/module/core/MMObjectBuilder.java
MODIFY /mmbase/branches/MMBase-1_8/src/org/mmbase/module/core/MMBase.java
MODIFY /mmbase/branches/MMBase-1_8/src/org/mmbase/module/builders/MMEvents.java
MODIFY /mmbase/trunk/src/org/mmbase/module/core/MMObjectBuilder.java

People

Dates

  • Created:
    2007-03-01 09:51
    Updated:
    2008-07-16 22:13
    Resolved:
    2008-07-16 22:12