Attendees: Michael Bouschen, Tilmann Zäschke, Craig Russell

Agenda:

1. EMail "A new general method to update object databases / Should it be 
included in Java Data Objects, JDO ?”

It’s not clear that a separate method is needed, even if garbage collection is 
seen to be useful. Discussion may continue on email.

2. Discussion "EmbeddedPCMapping cannot be cast to PersistableMapping" / 
JDO-751 "Support for Java8 Optional" 
https://issues.apache.org/jira/browse/JDO-751

Negation of the == null expression in JDOQL is an issue. SQL semantics are 
clear: any operation using NULL including NOT yields NULL. Page 177 of the JDO:

        • Navigation through a null-valued field, which would throw 
NullPointerException, is treated as if the subexpression returnedfalse. 
Similarly, a failed cast operation, which would throw ClassCastException, is 
treated as if the subexpression returned false. Other subexpressions or [other 
values for variables might still qualify the candidate instance for inclusion 
in the result set.]

We need to decide whether “age < 70” where age is nullable can return a boolean 
that can be negated or is considered to be a navigation of the age field. Java 
language would always unbox the age field which would throw a NPE. The way to 
avoid this in Java is to use a conditional AND operator: “age != null && age < 
70” will always work. JDOQL can use the identical construct in which case the 
expression returns a boolean that can be negated. If the “age != null” guard is 
not used, then page 177 is relevant.

Needs clarification in the specification, page 177: 

a) what is the subexpression?
b) does navigation include comparison of the value with non-null values?

Are there any existing test cases?

The “orElse” is useful for returning values in the SELECT clause. We could 
(should?) allow orElse only in the SELECT clause not in the WHERE clause.

3. JIRA JDO-753 "Review Tomcat port configuration" 
https://issues.apache.org/jira/browse/JDO-753

JIRA has been closed. Maybe confused with a different project.

4. JIRA JDO-754 "Add more logical complement operator JDOQL query tests" 
https://issues.apache.org/jira/browse/JDO-754

There is a logical complement test class that will be extended. With the 
current snapshot the double negations work with Derby. 

5. JDO 3.1: Need to go through change lists in JIRA for 3.1 RC1 and 3.1 to 
prepare JCP Change Log

6. Other issues

Action Items from weeks past:
[Oct 30 2015] AI Craig: File a maintenance review with JCP
[May 15 2015] AI Craig Spec change for roll back an active transaction when 
closing a persistence manager (JDO-735)  
[Apr 17 2015] AI Craig: Oracle spec page on JDO need to be updated once the JCP 
Maintenance Release for JDO 3.1 is published
[Oct 17 2014] AI Matthew any updates for "Modify specification to address NoSQL 
datastores": https://issues.apache.org/jira/browse/JDO-651?
[Feb 28 2014] AI Everyone: take a look at 
https://issues.apache.org/jira/browse/JDO-712
[Feb 28 2014] AI Everyone: take a look at 
https://issues.apache.org/jira/browse/JDO-625
[Dec 13 2013] AI Craig file a JIRA for java.sql.Blob and java.sql.Clob as 
persistent field types
[Aug 24 2012] AI Craig update the JIRAs JDO-689 JDO-690 and JDO-692 about 
JDOHelper methods. In process.

Craig L Russell
Architect
craig.russ...@oracle.com
P.S. A good JDO? O, Gasp!





Reply via email to