Bug#272295: gcFree Assertion at gc-incremental.c:1300 - "Attempt to explicitly free nonfixed object"

Barry Hawkins Barry Hawkins <barry@alltc.com>, 272295@bugs.debian.org
Sat Feb 12 16:54:02 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Package: kaffe
Version: 1.1.4.PRECVS7-1
Severity: normal

uname -a:
Linux case 2.6.10 #1 Tue Dec 28 10:49:53 EST 2004 ppc GNU/Linux

A javacc task that ran successfully under kaffe-1.1.4.PRECVS6-1 is now
failing under kaffe-1.1.4.PRECVS7-1.  The kaffe install in question uses
the pthreads package, not jthreads.  The javacc task is part of the
build for the lucene source package.  A trimmed transcript of the build
attempt is attached at the end of the message.

The error appears to be related to garbage collection, and is highly
reproducible.  For all transcripts, the -verbosegc switch was used on
java invocations.  Executing the javacc task outside of Ant indicates
that the issue is not tied to the javacc task directly, since the task
completes without issue.  The subsequent javacc task that should follow
can also be executed without issue.  Transcripts of both are attached below:

Transcript of manual execution of the javacc task just before the error:

barryh@case:~$ /usr/lib/kaffe/pthreads/bin/java -verbosegc
- -Dinstall.root=/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3
- -classpath /usr/share/java/javacc.jar org.javacc.parser.Main
- 
-OUTPUT_DIRECTORY:/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/build/gen/org/apache/lucene/analysis/standard
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/src/java/org/apache/lucene/analysis/standard/StandardTokenizer.jj
Java Compiler Compiler Version 3.2 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/src/java/org/apache/lucene/analysis/standard/StandardTokenizer.jj
. . .
Note: UNICODE_INPUT option is specified. Please make sure you create the
parser/lexer usig a Reader with the correct character encoding.
<GC: heap 5124K, total before 4696K, after 3862K (37424/33938 objs)
~ 100.0% free, allocated 22694K (#70353), marked 1852K, swept 834K (#3486)
~ 2820 objs (110K) awaiting finalization>
<GC: heap 5124K, total before 4651K, after 3191K (46837/34264 objs)
~ 100.0% free, allocated 1880K (#18419), marked 1210K, swept 1459K (#12573)
~ 2773 objs (114K) awaiting finalization>
Parser generated successfully.
<GC: heap 5124K, total before 4651K, after 3270K (54542/32840 objs)
~ 100.0% free, allocated 2081K (#22649), marked 1289K, swept 1380K (#21702)
~ 1097 objs (35K) awaiting finalization>


Transcript of manual exection of subsequent javacc task that is not reached:

barryh@case:~$ /usr/lib/kaffe/pthreads/bin/java -verbosegc
- -Dinstall.root=/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3
- -classpath /usr/share/java/javacc.jar org.javacc.parser.Main
- 
-OUTPUT_DIRECTORY:/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/build/gen/org/apache/lucene/queryParser
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/src/java/org/apache/lucene/queryParser/QueryParser.jj
Java Compiler Compiler Version 3.2 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/src/java/org/apache/lucene/queryParser/QueryParser.jj
. . .
<GC: heap 5124K, total before 4712K, after 3838K (46331/39124 objs)
~ 100.0% free, allocated 19937K (#73177), marked 1910K, swept 874K (#7207)
~ 5701 objs (199K) awaiting finalization>
<GC: heap 6148K, total before 5705K, after 4062K (65743/48076 objs)
~ 100.0% free, allocated 4874K (#36596), marked 2088K, swept 1643K (#17667)
~ 7754 objs (263K) awaiting finalization>
<GC: heap 7172K, total before 6463K, after 4432K (59485/40100 objs)
~ 100.0% free, allocated 2402K (#11441), marked 2459K, swept 2030K (#19385)
~ 3004 objs (93K) awaiting finalization>
Parser generated successfully.


Trimmed transcript of lucene source package build attempt:
barryh@case:~/debian_packages/lucene/1.4.3/lucene-1.4.3$ debuild -us -uc
dpkg-buildpackage: source package is lucene
dpkg-buildpackage: source version is 1.4.3-3
dpkg-buildpackage: source maintainer is Barry Hawkins <barry@alltc.com>
dpkg-buildpackage: host architecture is powerpc
~ fakeroot debian/rules clean
dpatch  deapply-all
reverting patch 02_upstream_root_ant_build_fix from ./ ... ok.
reverting patch 01_upstream_StandardTokenizer_fix from ./ ... ok.
rm -rf patch-stamp patch-stampT debian/patched
dh_testdir
dh_testroot
rm -f build-stamp
/usr/lib/kaffe/bin/java -Xss 768k -verbosegc  -classpath
/usr/share/java/gnujaxp.jar:/usr/share/ant1.6/lib/ant.jar:/usr/share/ant1.6/lib/ant-launcher.jar:/usr/share/ant1.6/lib/ant-junit.jar:/usr/share/java/junit.jar:/usr/lib/kaffe/lib/tools.jar
org.apache.tools.ant.Main -verbose -propertyfile
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/debian/ant.properties
clean
Apache Ant version 1.6.2 compiled on September 30 2004
Buildfile: build.xml
Detected Java version: 1.4 in: /usr/lib/kaffe/pthreads
Detected OS: Linux
parsing buildfile
[...]
<GC: heap 8196K, total before 7473K, after 6228K (82599/74459 objs)
~ 100.0% free, allocated 3829K (#28025), marked 3261K, swept 1244K (#8140)
~ 944 objs (33K) awaiting finalization>
Build sequence for target `invoke-javacc' is [invoke-javacc]
Complete build sequence is [invoke-javacc, init, package-zip-src,
package-tgz-src, package-all-src, compile-core, compile-demo,
javacc-check, javacc-HTMLParser, jar-core, javadocs, jar-demo, war-demo,
package, package-zip, package-tgz, package-all-binary, dist,
compile-test, test, compile, default, javacc-StandardAnalyzer,
javacc-QueryParser, docs-prepare, prepare-error, dist-src, dist-all,
docs, clean, jar, generate-test-reports, jar-src, javacc, test-unit, ]
~  [antcall] Entering
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/build.xml...
Build sequence for target `invoke-javacc' is [invoke-javacc]
Complete build sequence is [invoke-javacc, init, package-zip-src,
package-tgz-src, package-all-src, compile-core, compile-demo,
javacc-check, javacc-HTMLParser, jar-core, javadocs, jar-demo, war-demo,
package, package-zip, package-tgz, package-all-binary, dist,
compile-test, test, compile, default, javacc-StandardAnalyzer,
javacc-QueryParser, docs-prepare, prepare-error, dist-src, dist-all,
docs, clean, jar, generate-test-reports, jar-src, javacc, test-unit, ]

invoke-javacc:
~     [java] Executing '/usr/lib/kaffe/pthreads/bin/java' with arguments:
~     [java]
'-Dinstall.root=/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3'
~     [java] '-classpath'
~     [java] '/usr/share/java/javacc.jar'
~     [java] 'org.javacc.parser.Main'
~     [java]
'-OUTPUT_DIRECTORY:/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/build/gen/org/apache/lucene/analysis/standard'
~     [java]
'/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/src/java/org/apache/lucene/analysis/standard/StandardTokenizer.jj'
~     [java]
~     [java] The ' characters around the executable and arguments are
~     [java] not part of the command.
<GC: destroying classloader @0x10836300 (2 entries removed)>
<GC: heap 8196K, total before 7451K, after 5842K (81835/68466 objs)
~ 100.0% free, allocated 2689K (#11457), marked 2767K, swept 1609K (#13369)
~ 1754 objs (62K) awaiting finalization>
~     [java] Java Compiler Compiler Version 3.2 (Parser Generator)
~     [java] (type "javacc" with no arguments for help)
~     [java] Reading from file
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/src/java/org/apache/lucene/analysis/standard/StandardTokenizer.jj
. . .
~     [java] Note: UNICODE_INPUT option is specified. Please make sure
you create the parser/lexer usig a Reader with the correct character
encoding.
~     [java] File "TokenMgrError.java" does not exist.  Will create one.
~     [java] File "ParseException.java" does not exist.  Will create one.
~     [java] File "Token.java" does not exist.  Will create one.
~     [java] File "CharStream.java" does not exist.  Will create one.
~     [java] Parser generated successfully.
~  [antcall] Exiting
/home/barryh/debian_packages/lucene/1.4.3/lucene-1.4.3/build.xml.
<GC: heap 8196K, total before 6801K, after 6079K (73476/69333 objs)
~ 100.0% free, allocated 3138K (#9421), marked 2906K, swept 721K (#4143)
~ 2860 objs (115K) awaiting finalization>
kaffe-bin:
/home/arnaud/debian/kaffe/kaffe-1.1.4.PRECVS7/build-tree/kaffe-1.1.4.PRECVS7/kaffe/kaffevm/kaffe-gc/gc-incremental.c:1300:
gcFree: Assertion `!!!"Attempt to explicitly free nonfixed object"' failed.
make: *** [build-stamp] Killed
debuild: fatal error at line 764:
dpkg-buildpackage failed!


- --
Barry Hawkins
All Things Computed
site: www.alltc.com
weblog: www.yepthatsme.com

Registered Linux User #368650
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCDpNJ7bZ6kUftWZwRAovdAKCttlX5Le9SOtvaEjO0pV3pje03IQCfWIyR
JXMHviC1L7aFF3QB0rsByvk=
=PCIz
-----END PGP SIGNATURE-----