On 3/4/2013 5:21 AM, Knut Anders Hatlen wrote:
Mike Matrigali <[email protected]> writes:
Also note that these are all estimates within the system. As Knut
pointed out there are some known problems with the estimates. And
even with fixes he has suggested, the code is probably just guessing
with things like blobs/clobs.
I haven't verified, but I think HashJoinStrategy uses
DataTypeDescriptor.estimatedMemoryUsage() to estimate how much memory
the hash table will consume. That method has no case for BLOB or CLOB,
so it looks as if it will return zero for LOB columns. If that's so, it
will definitely overestimate how many rows fits in maxMemoryPerTable
kilobytes if the rows contain LOBs.
Thanks Knut for finding that, I filed DERBY-6096 for the issue.