|
[
Permlink
| « Hide
]
Marc Prud'hommeaux added a comment - 17/Sep/06 07:05 AM
The same goes for element 12, which is the same as above, except that it is testing that a detached-dirty instance will transition to detached-clean. The fix is to change element 11 from "DETACHED_CLEAN" to "ERROR"
This is a spec bug. The sentence "If the parameter instance is detached, then JDOUserException is thrown." should be read as part of the previous paragraph that describes the behavior if a transaction is not active. In this case, detached and transient instances cannot be made persistent before detach because makePersistent requires an active transaction.
The operative behavior is "If a detachCopy method is called with an active transaction, the parameter Collection of instances is first made persistent, and the reachability algorithm is run on the instances. " I'd like to resolve this issue as invalid, since the intent is to only throw an exception if detached and transient instances in the reachability graph cannot be made persistent (if there is no active transaction). The maintenance release will clarify the intent. Since the spec is ambiguous, I'll change the test to UNSPECIFIED for element 11 and 12, for the branches/2.0.1 but not for the trunk.
The maintenance release will move the sentence "If the parameter instance is detached, then JDOUserException is thrown" into the description of detach without an active transaction. And the test will verify that a detached-clean instance is returned as detached-clean, and a detached-dirty instance is returned as detached-clean. svn commit src/java/org/apache/jdo/tck/lifecycle/StateTransitionsReturnedObjects.java
Sending src/java/org/apache/jdo/tck/lifecycle/StateTransitionsReturnedObjects.java Transmitting file data . Committed revision 462525. |
||||||||||||||||||||||||||||||||||||||||||||||||||