BTW, I just checked in a faster implementation of IDUtil that does
not attempt to produce a "secure" ID by creating an MD5 digest. Also
the new temp ID is just 8 bytes, not 16. Supposedly the new algorithm
makes IDs easier to guess, but in this case it is irrelevant, as such
ids are substituted with another value on commit.
The new version of ObjectId constructor is 15-20 times faster than
M10. But of course there maybe other inefficiencies downstream (we
may need to profile ObjectId HashMap put/get performance - this is
probably more important).
Andrus
On Feb 2, 2006, at 12:20 PM, Florian.Esk..i-de.com wrote:
> To show the problem we produce a sample code. The code needs for 1000
> objects with
>
> cayenne 1.1 3562 milliseconds
> and
> cayenne 1.2M10 17781 milliseconds
> Profiling of the application show us that in version 1.2 most of the
> creation time is spent inside
> org.objectstyle.cayenne.util.IDUtil.pseudoUniqueByteSequence16()
This archive was generated by hypermail 2.0.0 : Thu Feb 02 2006 - 19:00:18 EST