Daniel Noll wrote:
Kristian Waagan wrote:
I haven't been able to obtain incorrect values, but I've been able to
obtain the same locator value twice (on a multiprocessor machine and
a slightly hacked Derby). It would help us a lot if we could
instrument Derby to log the locator values that cause the error
happening in your environment.
Also, on what kind of machine and operation system are you observing
the error?
Desktop is: Windows 2003 x86, 4 CPUs, 4GB RAM
Server is: Windows 2003 x86, 4 CPUs, 4GB RAM
Given that the information is so similar between the two, they might
be running on the same computer.
As for reproducibility, I'm unable to reproduce it here at all, and
the end user only had it happen once so far. But when it happened, it
apparently continued to happen for all subsequent BLOB retrievals for
a while, and then "fixed itself".
Each of these BLOB retrievals are being done in a separate
transaction, which makes that last claim even more perplexing, unless
the client reconnected in the meantime and we simply weren't told.
Daniel,
Thanks for the information.
I feel we have too little information to create a fix - we don't even
know what the real problem is.
The locator values are drawn from a counter, and there is a counter for
each (root) connection. I'm having trouble understanding how we could
get concurrency issues in this case.
Also, I think the error you are seeing suggests an invalid locator
value, not a duplicate value.
Anything special about your network server setup? (time-slicing,
statement caching, connection pooling)
My suggestion is to wait for a while and see if it happens again, or see
if anyone else has suggestions.
regards,
--
Kristian
Daniel