Attendees: Michael Bouschen, Tilmann Zäschke, Craig Russell NOTE: Next meeting will be on July 8 at 9:00 PDT
Agenda: 1. New comments on JDO-751 "Support for Java8 Optional" https://issues.apache.org/jira/browse/JDO-751 a) comparing transient and persistent instances is explicitly in the specification and has a test case ComparingPersistentAndNonPersistentInstance which compares instances as well as fields in the instances. The specification is not explicit about comparing fields of transient instances, which should mean that it is ok to compare fields of transient instances passed as parameters (the only way JDOQL can have access to transient instances is via parameters). It might be good to add more tests that compare more than just personid. b) Truncation of precision for date types is an issue with the mapping. Assuming that a java.util.Date is persisted to a database type that supports millisecond precision, queries comparing fields of type java.util.Date should be fine. c) JDO explicitly supports navigation through possibly-null-valued fields without null checks. “p. 178: Navigation through single-valued fields is specified by the Java language syntax of field_name.field_name.....field_name.” “p 177: Navigation through a null-valued field, which would throw NullPointerException, is treated as if the subexpression returnedfalse." The semantics of navigation in JDOQL are consistent with the way relational databases treat NULL values. Navigation via joins will not return results if the join condition compares with NULL valued foreign keys. The example of the family database of this.father.father.id == 33 seems relevant. The corresponding Company model query of this.manager.manager.id == 33 to find all the second-line reports of manager 33 should also be relevant. The interesting thing here is the application of Optional to the case. These queries should work regardless of whether the Java null-checks or isPresent() checks are used. 2. JIRA fixed: JDO-754 "Add more logical complement operator JDOQL query tests” https://issues.apache.org/jira/browse/JDO-754 Closed. 3. JDO 3.1: Need to go through change lists in JIRA for 3.1 RC1 and 3.1 to prepare JCP Change Log 4. 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. Regards Michael -- Michael Bouschen akquinet tech@spree GmbH Bülowstraße 66 • D-10783 Berlin Tel: +49 30 235520-33 Fax: +49 30 217520-12 E-Mail: michael.bousc...@akquinet.de <mailto:michael.bousc...@akquinet.de> Web: www.akquinet.de <http://www.akquinet.de/> Geschäftsführung: Martin Weber, Dr. Torsten Fink Amtsgericht Berlin HRB 86780 • USt.-Id. Nr.: DE 225 964 680 [Facebook] <http://www.facebook.com/akquinet> [XING] <https://www.xing.com/companies/akquinetag> [G+] <https://plus.google.com/b/111054946250796705170/+akquinet/posts> [LinkedIn] <https://www.linkedin.com/company/akquinet-ag> [Twitter] <https://twitter.com/akquinet> Craig L Russell Architect craig.russ...@oracle.com P.S. A good JDO? O, Gasp!