The default isolation level for db4o is read-committed. In
your transaction, you can see the committed changes from the other
transactions. However, don't forget that db4o uses object reference cache to
speed up the retrieval. This means that if the object was already retrieved in
the current transaction you will need to call
extObjectContainer.refresh(object)
to obtain the most recent value
of the object.
Another interesting feature to point out: when using Lazy or Snapshot queries phantom reads can occur if the other transaction commits during the current transaction query execution. For more information see Query Modes.
Please, note that the isolation level is only applicable for client-server version of db4o. If you are sharing the same object container between several users, you are actually working within one transaction. If you need to have isolation, you can implement it on your application level.