One more piece of information.
The data that does not get synced up is not fetched explicitly but as a result of an association. Using the toplink.refresh.cascade=CascadeAllParts query hint causes it to be refreshed. This may explain everything.
[Message sent by forum member 'jbelis' (jbelis)]
http://forums.java.net/jive/thread.jspa?messageID=292029