[tcljava-user] debugging "assertion`tsdPtr->initialized' failed"
Brought to you by:
mdejong
From: Russell R. <rus...@gm...> - 2012-02-16 20:20:56
|
I have a simple script. It works w/o error in jaclsh. It core dumps in jtclsh. Here's the script: 1 set env(TCL_CLASSPATH) "...some-big-long-classpath..." 2 package require java 3 set httpClient [java::new org.eclipse.jetty.client.HttpClient] 4 $httpClient start The script crashes in jtclsh on line 4 with this message: tclsh8.4: /home/rroy/tcljava/src/native/javaCmd.c:398: JavaGetCache: Assertion `tsdPtr->initialized' failed. Aborted (core dumped) That's the whole of the output when the thing dies. I was hoping to be able to do some java debugging by running the script in jaclsh but, as I said, the thing works fine there - no problem, no crash. I really need this to work in jctlsh. I'm using tclBlend 1.4.1 pulled from latest at sourceforge, and thread2.6.5, tcl 8.4.19 (I also tried various permutations and combinations of thread2.6.3, tcl8.4.13 and earlier versions of tclBlend, all w/o any luck.) I've rebuilt and and re-installed tclBlend cleanly with each change so as to ensure consistency and jaclsh and jtclsh are setting up a correct environment but the problem persists. I stuck the core image in gdb but I there's was nothing discernibly useful, to me anyways (I believe the failed assertion is forcing the core dump.) I've run out of ideas on how to debug this. Russ PS: For what it's worth ... The HttpClient of above comes in two flavors - CONNECTOR_SOCKET and CONNECTOR_SELECT_CHANNEL (the default). I happened to discover through trial and error that if I configure the client as CONNECTOR_SOCKET before I do the start then it runs w/o error in jtclsh. That's interesting but it doesn't help me because I need to run in it as select channel. |