[ROOT] ROOT 3.00.06 I/O backward compatibility

From: Valeri Fine (Faine) (fine@bnl.gov)
Date: Thu Mar 15 2001 - 17:48:57 MET


Hello Rene

It seems to me with the last ROOT 3.00.06 we can not read back our
files with the object derived from TTable and written with any 
previous ROOT version (3.00.02 included).

The problem is:

TTable class has its own custom TTable::Streamer method.
That is not affected with the new  I/O schema.
On another hand TTable is derived from TDataSet class.
The last has no custom streamer. It is generated by RootCint.
Our custom TTables::Streamer calls  the regular TDataSet::Streamer.

Under ROOT 3.00.06 the custom TTables::Streamer calls  the 
regular TDataSet::Streamer and then crashed since TBuffer is 
corrupted.

This happens if the file was written with any previous ROOT version.
We see no problem if the files are written and read back with 3.00.06.
The problem persists if the files are written with ROOT 3.00.02

Is it a bug or some new feature we have to deal with ?
We have 10 Tb of data written with ROOT that we can not read back
now.

  With my regards,
   Valeri



=================================================================
Dr. Valeri Faine (Fine)
    -------------------          Phone: +1 631 344 7806
Brookhaven National Laboratory   FAX  : +1 631 344 4206
Bldg. 510A /STAR                 mailto:fine@bnl.gov
Upton, New York, 11973-5000      http://nicewww.cern.ch/~fine
USA
                                 



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:39 MET