Tcl Source Code

Ticket Change Details
Login
Overview

Artifact ID: 7f3ee173e9f5b376af79e3a97bf6f2934d2a97ba
Ticket: 3494470fffffffffffffffffffffffffffffffff
called Tcl_FindHashEntry on deleted table
User & Date: dkf 2013-11-12 12:34:08
Changes

  1. closedate changed to: "2456609.02371391"
  2. closer changed to: "dkf"
  3. comment changed to:
    % puts $tcl_patchLevel
    8.5.10
    % parray tcl_platform
    tcl_platform(byteOrder)   = littleEndian
    tcl_platform(machine)     = x86_64
    tcl_platform(os)          = Linux
    tcl_platform(osVersion)   = 3.0.0-16-generic
    tcl_platform(platform)    = unix
    tcl_platform(pointerSize) = 8
    tcl_platform(threaded)    = 1
    tcl_platform(user)        = rtreleaven
    tcl_platform(wordSize)    = 8
    % 
    
    Problem Behavior
    The script below produces this output >90% but  <100% of the time.
    
    $ tclsh getHelp.tcl
    Does thread exist? no
    Does thread exist? no
    Does thread exist? no
    Does thread exist? no
    Does thread exist? no
    Does thread exist? no
    called Tcl_FindHashEntry on deleted table
    $ echo $?
    0
    
    Expected Behaviour
    The message "called Tcl_FindHashEntry on deleted table" should not be generated
    
    Concise Code Sample
    
    set truth(1) yes
    set truth(0) no
    package require Thread
    set id [ thread::id ]
    for { set i 0 } { $i < 6 } { incr i } {
    thread::create -preserved {
    while 1 {
    for { set i 0 } { $i < 9999999 } { incr i } {}
    update
    }
    }
    }
    after 1000
    foreach id [ thread::names ] {
    if { $id eq [ thread::id ] } { continue }
    thread::release -wait $id
    puts "Does thread exist? $truth([ thread::exists $id])"
    }
    
  4. login: "dkf"
  5. mimetype: "text/plain"
  6. severity changed to: "Minor"
  7. status changed to: "Closed"