[elephant-devel] Re: Data mismatch

Alex Mizrahi killerstorm at newmail.ru
Sun Mar 2 14:57:32 UTC 2008


 LPP> 3) Indexed class instances were added in B.

do you mean you've added instances with make-instance, or you did something 
with schema?

 LPP> 4) Those instances were visible in B, but not in A.

you mean not accessible via get-instances-by-class?

 LPP> Any idea on what might have happened?

just as idea, do you run your code in an explicit transaction?

get-instances-by-class does SQL queries, so i see two possibilities:
 * new values were not seen due to transaction isolation (you didn't run 
fresh transaction, somehow)
 * it did _different_ queries in different processes.

like process A created btree for class index, but process B did not notice 
this and made another one, overwritting A's entry in class-root table.

if this happened due to race condition, it should be fixed when we'll move 
to serializable transaction isolation.

otherwise, this could be a bug..

if this problem is reprodicble, please check oids of class index in 
different processes







More information about the elephant-devel mailing list