Hello,

I am getting a SIGABRT when evaluating string objects in AOLserver 4.0 b6. The pseudocode is:

interp=Ns_GetConnInterp (Ns_GetConn ())
obj = Tcl_NewStringObj (utf8string, len)

Tcl_IncrRefCount (obj)

repeat a_few_times
    Tcl_EvalObjEx (interp, obj, 0)
end

Tcl_DecrRefCount (obj) /* NOTE: this statement happens later, and in a different thread */

This sequence runs OK in a load test, but once AOLserver decides to get rid of a connection thread after load goes down, and run cleanup handlers, an invalid memory block appears, leading to ABRT. Am I doing something wrong? Crash debug info follows.

Thanks!
Alex

alloc: invalid block: 97df00: 0 70 ef

  [1] __sigprocmask(0x0, 0xfb980bd0, 0x0, 0xffffffff, 0xffffffff, 0x0), at 0xfee59d18
  [2] _resetsig(0xfee6c9ac, 0x0, 0x0, 0x0, 0xfb981e3c, 0xfb981e40), at 0xfee4f354
  [3] _sigon(0xfee743c0, 0xfee742a0, 0xfb981e38, 0xfb980ca4, 0x6, 0xfeecdf94), at 0xfee4eb10
  [4] _thrp_kill(0x0, 0x9, 0x6, 0xfee6c9ac, 0xfb981dc0, 0xff24ecd0), at 0xfee518e4
  [5] abort(0xfef35ad4, 0xfef3d5d4, 0xfef39738, 0xfef39738, 0x70, 0xef), at 0xfeeb95d0
=>[6] Tcl_PanicVA(format = 0xff22e2ec "alloc: invalid block: %p: %x %x %x\n", argList = 0xfb980ea8), line 106 in "tclPanic.c"
  [7] Tcl_Panic(arg1 = 0xff22e2ec "alloc: invalid block: %p: %x %x %x\n", ...), line 134 in "tclPanic.c"
  [8] Ptr2Block(ptr = 0x97df08 "ns_adp_parse"), line 750 in "tclThreadAlloc.c"
  [9] TclpFree(ptr = 0x97df08 "ns_adp_parse"), line 390 in "tclThreadAlloc.c"
  [10] Tcl_Free(ptr = 0x97df08 "ns_adp_parse"), line 1160 in "tclCkalloc.c"
  [11] Tcl_InvalidateStringRep(objPtr = 0x7fe128), line 868 in "tclObj.c"
  [12] TclFreeObj(objPtr = 0x7fe128), line 679 in "tclObj.c"
  [13] TclReleaseLiteral(interp = 0xd44588, objPtr = 0x7fe128), line 745 in "tclLiteral.c"
  [14] TclCleanupByteCode(codePtr = 0xa8d330), line 652 in "tclCompile.c"
  [15] FreeByteCodeInternalRep(objPtr = 0xcc2d60), line 538 in "tclCompile.c"
  [16] TclFreeObj(objPtr = 0xcc2d60), line 677 in "tclObj.c"

-- AOLserver - http://www.aolserver.com/ To Remove yourself from this list: http://www.aolserver.com/listserv.html List information and options: http://listserv.aol.com/



Reply via email to