This is the mail archive of the
kawa@sourceware.org
mailing list for the Kawa project.
Re: Exceptions while evaluating xqueries with Qexo
- From: Per Bothner <per at bothner dot com>
- To: Daniel Aborg <lists dot kawa at daborg dot fastmail dot fm>
- Cc: kawa at sources dot redhat dot com
- Date: Thu, 03 May 2007 21:58:04 -0700
- Subject: Re: Exceptions while evaluating xqueries with Qexo
- References: <463A5F2B.1010903@daborg.fastmail.fm>
Daniel Aborg wrote:
1)
Caused by: java.lang.Error: unknown opcode to invert_opcode
at gnu.bytecode.CodeAttr.invert_opcode(CodeAttr.java:238)
at gnu.bytecode.CodeAttr.processFixups(CodeAttr.java:2348)
at gnu.bytecode.CodeAttr.assignConstants(CodeAttr.java:2433)
at gnu.bytecode.Attribute.assignConstants(Attribute.java:99)
at gnu.bytecode.Method.assignConstants(Method.java:296)
at gnu.bytecode.ClassType.doFixups(ClassType.java:851)
at gnu.bytecode.ClassType.writeToStream(ClassType.java:861)
at gnu.bytecode.ClassType.writeToArray(ClassType.java:919)
at gnu.expr.ModuleExp.evalToClass(ModuleExp.java:96)
... 25 more
I could look into this if I had a testcase.
2)
Caused by: java.lang.ClassFormatError: Invalid method Code length 95681
in class file $Lsstring$Gr
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.lang.ClassLoader.defineClass(ClassLoader.java:465)
at gnu.bytecode.ArrayClassLoader.findClass(ArrayClassLoader.java:108)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at gnu.expr.ModuleExp.evalToClass(ModuleExp.java:129)
... 30 more
That's a limitation in the Java Virtual Machine - the Code of a
method cannot be more that 65535 bytes long.
It would be nice if Kawa could split a large method into multiple
methods, but it doesn't yet.
--
--Per Bothner
per@bothner.com http://per.bothner.com/