From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-15 02:15:03
|
I spent much of the weekend programming and and added support for queries returning properties and aggregate values. These queries only work with iterate() currently ( ie. not with find() ). You can write stuff like select foo.id, foo.name from foo in class Foo where foo.bar.name = 'bar' select count(*), count(distinct foo.baz), sum(foo.count), foo.type from foo in class eg.Foo group by foo.type This fills a very old feature request. Implementing this required some reworking of the query translater. If people here could grab a CVS snapshot and test this new implementation against their current system (and also test the new functionality) I would really appreciate that. I also fixed a problem with JNDI lookup of SessionFactory and fixed some problems with lifecycle load() and onLoad() callbacks. Earlier in the week I changed the ordering in which save() and delete() are cascaded to collections. This improves the behaviour where there are not-null constraints. It also optimizes performance of one-to-many bidirectional associations. However there is a (very) small possibility of breaking existing code so be aware of that. I want to release all this in version 1.0.1 (in the next couple of days). Gavin |