Re: [tcljava-user] debugging "assertion`tsdPtr->initialized' failed"
Brought to you by:
mdejong
|
From: Russell R. <rus...@gm...> - 2012-02-17 17:19:21
|
More info...
I used the tclBlend debug target ("make debug") and got dropped into gdb
with jctlsh loaded. Ran my script and got this:
% run /home/rroy/word-cometd/bayeux
...
$httpClient start
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1208981824 (LWP 25345)]
0xb5392e6e in ?? ()
(gdb)
On Thu, Feb 16, 2012 at 3:20 PM, Russell Roy <rus...@gm...> wrote:
> 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.
>
>
>
>
|