Tcl Source Code

View Ticket
Login
Ticket UUID: d8ff47babc5676f9684579b7e6c2ca3dbc16454d
Title: Segmentation fault (core dumped) while using Thread 2.7.2
Type: Bug Version: tclsh8.6
Submitter: anonymous Created on: 2015-07-30 12:57:24
Subsystem: 42. Memory Preservation Assigned To: dgp
Priority: 5 Medium Severity: Severe
Status: Closed Last Modified: 2015-07-30 19:29:23
Resolution: Invalid Closed By: dgp
    Closed on: 2015-07-30 19:29:23
Description:
File - sample.tcl

package require Expect
spawn telnet 10.64.12.126



Script being executed - 

set inputListToRun(12) 1
package require Thread
set pool [tpool::create -minworkers [array size inputListToRun] -initcmd {
source sample.tcl
}]

Output - Segmentation fault (core dumped)



Version of OS - CentOS 7
Tclsh version - 8.6
Expect version - 5.45
Thread version - 2.7.2
User Comments: dgp added on 2015-07-30 19:29:23:
This likely matters much less than you might think,
since Expect by its nature interacts with spawned
processes, anything you might imagine wanting to
do with many concurrent threads all running Expect
scripts can likely be done just as effectively by
many concurrent processes all running Expect scripts.

dgp added on 2015-07-30 19:27:21:
Correct me if I'm wrong, but I'm near certain
Expect is not and has never been thread safe.

I don't think it even qualifies as single-thread,
multi-interp safe.  It's got global vars all over
the place.

Something for Expect devs to fix (if you find any),
not a bug in Tcl or in Thread.