On Saturday 05 January 2002 06:25 am, you wrote:
>
>  Well, it's best if you give a small example because I can't reproduce the
>  problem.
>
>
> Guy Decoux

Hi, Guy.  Of course I have an example, but it's not small.  It's 2 scripts 
totaling 5.2k and 5 text files totaling 28.3k:  33.5k total.  I don't know 
how to make it any smaller because the problem occurs while loading the 5 
text files in a loop that converts lines into records and then marshals the 
records.  The error I receive:

bdbtst.rb:48:in `load': incompatible marshal file format (can't be read) 
(TypeError) 	format version 4.6 required; 168.29 given

occurs at, what to me appear, random times, typically after 3 of the 5 files 
have converted and the 4th is in process.  But the problem is not with the 
data in the 4th file.  The order in which the files are processed can be 
altered so that one that has previously failed succeeds and one that 
previously succeeded fails.  The message originates in  marshal.c in the ruby 
source, where the marshal major and minor version is checked in the "load" 
routine.   As noted in the error, 4.6 is the correct maj.min number and the 
"given" number, 168.29 in the error, actually ranges all over and is 
different with each failure.  It seems that the marshal version is being 
trashed somehow.  I don't know C and therefore can't get much of a clue where 
to look for the problem.  It does seem odd to me that the marshal "load" 
routine is being invoked when the record  is being written.  But what do I 
know?  The logic may require it.

I can send you, or anyone else who cares to look, the files that will 
duplicate the error for you.  OK?

Albert