How does TopLink know when to INSERT an object versus UPDATE it?
TopLink determines whether to INSERT or UPDATE an object based upon the following existence-checking settings (provided in each persistent class’s descriptor): Check cache (default) Check database Assume existence Assume non-existence Use the Check Database option only when caching cannot be guaranteed for modified objects. This option will lower performance (as compared to Check Cache) because it must access the database each time.