db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gerald Khin (JIRA)" <derby-...@db.apache.org>
Subject [jira] Created: (DERBY-106) HashJoinStrategy leads to java.lang.OutOfMemoryError
Date Fri, 17 Dec 2004 16:13:16 GMT
HashJoinStrategy leads to java.lang.OutOfMemoryError

         Key: DERBY-106
         URL: http://nagoya.apache.org/jira/browse/DERBY-106
     Project: Derby
        Type: Bug
    Reporter: Gerald Khin

My application is running out of memory: I encounterd a java.lang.OutOfMemoryError. I used
-Xmx256M. Unfortunatley, I cannot spend an arbitrary amount of JVM memory. 

Then, I commented out the line in class OptimizerFactoryImpl which was adding the HashJoinStrategy
to the set of Join strategies:

		if (joinStrategySet == null)
//			JoinStrategy[] jss = new JoinStrategy[2];
			JoinStrategy[] jss = new JoinStrategy[1];
			jss[0] = new NestedLoopJoinStrategy();
//			jss[1] = new HashJoinStrategy();
			joinStrategySet = jss;

And with these changes the OutOfMemoryError has gone away! And it works even with -Xmx128M!!!

So I guess that there is a major memory issue with this HashJoin strategy implementation.

If it turns out to be too complicated to make the memory consumption more predicatble or even
bounded to some configurable limit, then I need at least as a workaround a way to turn off
the HashJoin strategy completely: I did it by patching and building my own derby.jar, but
if there would be an official solution with some kind of switch like a system property, it
would be great!

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
If you want more information on JIRA, or have a bug to report see:

View raw message