db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ramandeep Kaur" <ramandhin...@gmail.com>
Subject Re: LargeCodegen test fails with derbyclient while running largeData test suite
Date Thu, 04 May 2006 22:45:17 GMT
Hi,

I reran testcase largeCodeGen with both frameworks - embedded and
DerbyNetClient.

Embedded
----------------
For embedded, test passed in the following cases:

1. when test was run by passig-Djvmflags="-Xmx1024M -Xms1024M" from command
line as follows:

>java -Dverbose=true -Djvmflags="-Xmx1024M -Xms1024M"
org.apache.derbyTesting.functionTests.harness.RunTest lang/largeCodeGen.java
2. When
java/testing/org/apache/derbyTesting/functionTests/tests/lang/largeCodeGen_app.properties
was modified and the line jvmflags=-Xmx512M -Xms512M was replaced with
jvmflags=-Xmx1024M -Xms1024M


DerbyNetClient
----------------------
With framework DerbyNetClient, there is still same error as given in my
message above.

Note: Please note that there is difference in jvmflags while running with
embedded and DerbyNetClient frameworks.

With embedded frameworks -Xmx and -Xms are given for jvmflags
With DerbyNetClient frameworks -mx and -ms are are given for jvmflags.


Thanks,
Ramandeep Kaur

On 5/3/06, Manjula G Kutty <manjula.kutty@gmail.com> wrote:
>
> Ramandeep Kaur wrote:
>
> > Hi,
> >
> > I ran largeCodeGen as following:
> >  java -Dverbose=true -Djvmflags="-mx512M -ms512M"
> > -Dframework=DerbyNetClient
> > org.apache.derbyTesting.functionTests.harness.RunTest
> > lang/largeCodeGen.java
> > With the above, I did NOT get usual error which was
> > *** Start: largeCodeGen jdk1.4.2 largeDataTests:largeDataTests
> > 2006-04-29 08:30:04 ***
> > 27a28
> > > JVMST109: Insufficient space in Javaheap to satisfy allocation request
> > Test Failed.
> > *** End:   largeCodeGen jdk1.4.2 largeDataTests:largeDataTests
> > 2006-04-29 08:32:01 ***
> >
> > Instead, I got another error which is
> > < PASS: IN clause with 97000 parameters
> > 20 del
> > < PASS: PREPARE: IN clause with 98000 parameters
> > 21 del
> > < PASS: IN clause with 98000 parameters
> > 22 del
> > < FAILED QUERY: IN clause with 99000 parameters.
> > 22a19
> > > FAILED QUERY: IN clause with 97000 parameters.
> > Test Failed.
> >
> > Here are the contents of test.txt
> >
> > *** Start: largeCodeGen jdk1.4.2 DerbyNetClient 2006-05-02 17:06:24 ***
> > Initialize for framework: DerbyNetClient
> > java -mx512M -ms512M
> > -Dderby.system.home=/local0/NightlyBuildResults.2006-05-02/
> > ibm142_largeDataTests/DerbyNetClient/largeCodeGen -
> > Djava.security.manager -Djava
> >
> .security.policy=/local0/NightlyBuildResults.2006-05-02/ibm142_largeDataTests/de
> > rby_tests.policy
> > -DderbyTesting.codejar=file:/local1/cloudtst/dev/src/jars/insan
> > e/ -DderbyTesting.codedir=/local1/cloudtst/dev/src/jars/insane
> > -DderbyTesting.se
> > rverhost=localhost -DderbyTesting.clienthost=localhost
> > -DderbyTesting.codeclasse
> > s=file://unused/ org.apache.derby.drda.NetworkServerControl start
> > Attempt to shutdown framework: DerbyNetClient
> > 19 del
> > < PASS: IN clause with 97000 parameters
> > 20 del
> > < PASS: PREPARE: IN clause with 98000 parameters
> > 21 del
> > < PASS: IN clause with 98000 parameters
> > 22 del
> > < FAILED QUERY: IN clause with 99000 parameters.
> > 22a19
> > > FAILED QUERY: IN clause with 97000 parameters.
> > Test Failed.
> > *** End:   largeCodeGen jdk1.4.2 DerbyNetClient 2006-05-02 17:08:07 ***
> >
> > Now it looks like it could be a diff problem. Any idea???
> >
> > Thanks, Raman
> >
> >
> > On 2/27/06, *John Embretsen* <John.Embretsen@sun.com
> > <mailto:John.Embretsen@sun.com>> wrote:
> >
> >     Kathey Marsden wrote:
> >
> >     > Manjula G Kutty wrote:
> >     >
> >     >> I have closed all the statements, prepared statements and
> >     resultsets
> >     >> in the largeCodeGen.java file. But still the test passes with
> >     embedded
> >     >> but fails with derbyClient. I'm attaching the modified
> >     >> largeCodeGen.java file
> >     >>
> >     > Hi Manjula,
> >     >
> >     > Because this test throws a lot of exceptions, the statements and
> >     > prepared statements would need to be closed in a finally
> >     block.     But
> >     > I just noticed something that might be causing this and it is
> >     related to
> >     > the test harness.
> >     > When we run the test network server starts and gets the jvmFlags
> >     > specified for the test in largeCodeGen_app.properties
> >     > jvmflags=-Xmx512M -Xms512M
> >     > (Whether that is at all right I don't know since app_properties
> >     is I
> >     > think supposed to be for the client).
> >     >
> >     > But it also gets these conflicting properties (from the harness
> >     itself?)
> >     > -ms16777216 -mx33554432
> >     >
> >     > So which is the server really using?
> >
> >     The server is using the latter (-ms16777216 -mx33554432), since
> these
> >     override the flags passed from the largeCodeGen_app.properties file.
> I
> >     verified this by running the lang/largeCodeGen.java test from
> >     current trunk
> >     with Sun JDK 1.5 and -Dframework=DerbyNetClient.
> >
> >     By the way, in my environment the above test run hangs (using
> >     DerbyNetClient). I have not investigated this further, but the
> >     heap does look
> >     full.
> >
> >     I used the jinfo and jmap tools that come with the JDK to observe
> >     the flags
> >     received by the server JVM and the actual heap configuration used
> >     by the
> >     server while running the test (I got the VMIDs using the jps tool).
> >
> >     By running "jinfo -flags" I got (extract):
> >
> >     VM Flags:
> >     -Xmx512M -Xms512M -Xms16777216 -Xmx33554432
> >     -
> Dderby.system.home=/home/je159969/apache/Derby/clean/tests/largeCodeGen2/DerbyNetClient/largeCodeGen
> >
> >     -Djava.security.manager
> >     -
> Djava.security.policy=/home/je159969/apache/Derby/clean/tests/largeCodeGen2/derby_tests.policy
> >
> >
> >     -
> DderbyTesting.codejar=file:/home/je159969/apache/Derby/clean/trunk/jars/sane/
> >     -
> DderbyTesting.codedir=/home/je159969/apache/Derby/clean/trunk/jars/sane
> >     -DderbyTesting.serverhost=localhost
> >     -DderbyTesting.clienthost=localhost
> >     -DderbyTesting.codeclasses=file://unused/
> >
> >     By running "jmap -heap" I got (extract):
> >
> >     Heap Configuration:
> >        MinHeapFreeRatio = 40
> >        MaxHeapFreeRatio = 70
> >        MaxHeapSize      = 33554432 ( 32.0MB)
> >        NewSize          = 655360 (0.625MB)
> >        MaxNewSize       = 4294901760 (4095.9375MB)
> >        OldSize          = 1441792 (1.375MB)
> >        NewRatio         = 12
> >        SurvivorRatio    = 32
> >        PermSize         = 8388608 ( 8.0MB)
> >        MaxPermSize      = 67108864 (64.0MB)
> >
> >
> >     I.e., jmap reports the max heap size as 32 MB, not 512 MB.
> >
> >     The extra (overriding) jvm heap size flags are set in
> >     NetServer.java in the
> >     harness package, which is used by RunTest.java (line 286) to start
> the
> >     network server. This code seems to be old (and buggy), since it
> >     looks for flags
> >     starting with "-ms" or "-mx", not "-Xms" or "-Xmx". Here's the
> >     code that is
> >     producing the flags:
> >
> >     if (!jvmName.equals("jview"))
> >     {
> >         if (setJvmFlags && (jvmflags.indexOf("-ms") == -1))
> >         // only setMs if no starting memory was given
> >         jvm.setMs (16*1024*1024); // -ms16m
> >         if (setJvmFlags && (jvmflags.indexOf("-mx") == -1))
> >         // only setMx if no max memory was given
> >         jvm.setMx(32*1024*1024); // -mx32m
> >         jvm.setNoasyncgc(true); // -noasyncgc
> >     }
> >
> >     The class level comment in jvm.java lists the "valid" jvm options,
> >     supposedly
> >     from "java -help". This list does not look anything like the
> >     option lists I
> >     get from Sun's JDKs 1.3 through 1.6, so I guess it is a few years
> >     old...
> >
> >
> >     --
> >     John
> >
> >
> >
> >
> >
> >
> >
> >
> > --
> > Ramandeep Kaur
> > ramandhindsa@gmail.com <mailto:ramandhindsa@gmail.com>
>
> Hi Raman,
>
> I would suggest you to run the entire suite (largedata) and then get the
> diff for both embedded and DerbynetClient. That way we can know whether
> it is a mere master update or a problem. Please let me know the result
> after running the entire suite
>
> Thanks
> Manjula
>



--
Ramandeep Kaur
ramandhindsa@gmail.com

Mime
View raw message