Tcl Source Code

View Ticket
Login
Ticket UUID: 3518301
Title: Tests assume nothing is already listening on port 9999
Type: Bug Version: obsolete: 8.5.11
Submitter: Created on: 2012-04-16 01:52:42
Subsystem: 25. Channel System Assigned To: andreas_kupries
Priority: 5 Medium Severity:
Status: Open Last Modified: 2012-04-24 00:41:28
Resolution: None Closed By:
    Closed on:
Description:
Hi!
Tests in chanio, httpold, and io fail for me when running "make test" in the "unix" subdirectory of the tcl8.5.11 sources. I suspect the failures are related. (If not, I'll be happy to file separate bugs.)

The abbreviated output is below, I've attached the complete output of "make test" for all the details. Please let me know if there's any more information I can provide.

Thank you!

==== chan-io-53.10 Bug 1350564, multi-directional fcopy FAILED
---- Result was:
{PANIC[04/15 21:32:15] LVCBase.cxx:426 t:0x2af110b46f10 Error opening config file: } {PANIC[04/15 21:32:15] LVCBase.cxx:426 t:0x2b89ebcb4f10 Error opening config file: }
---- Result should have been (exact matching):
AB BA

==== httpold-4.12 httpEvent FAILED
---- Result was:
ok ok
---- Result should have been (exact matching):
timeout ok

==== io-53.10 Bug 1350564, multi-directional fcopy FAILED
---- Result was:
{PANIC[04/15 21:33:41] LVCBase.cxx:426 t:0x2b7d304a0f10 Error opening config file: } {PANIC[04/15 21:33:41] LVCBase.cxx:426 t:0x2b4800204f10 Error opening config file: }
---- Result should have been (exact matching):
AB BA

$ uname -a
Linux mybox 2.6.18-308.1.1.el5 #1 SMP Fri Feb 17 16:51:01 EST 2012 x86_64 x86_64 x86_64 GNU/Linux

$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.8 (Tikanga)

This is all I did to reproduce:
unzip tcl8511-src.zip
cd tcl8.5.11/unix
./configure --prefix=/home/user/daxelrod/local-sw
make
make test
User Comments: dgp added on 2012-04-24 00:41:28:
bugs assigned to nobody aren't a good thing.

added on 2012-04-19 07:13:21:
kbk asked me to leave the httpold failure as a part of this bug rather than creating a new one.

The httpold failure appears to be a race condition. When run directly ( ./tcltest ../tests/httpold.test ), it usually fails, but occasionally passes. 

Additionally, running it under strace (strace ./tcltest ../tests/httpold.test) appears to make it always pass.

added on 2012-04-19 06:53:35:
Ok, figured it out for chanio and io. The LVCBase.cxx message was coming from some other program bound to 0.0.0.0:9999

The actual bug appears to be that the tests assume that nothing is listening on port 9999 without checking.

I believe they try to start their own server listening on that port, and then connect to 127.0.0.1:9999 , expecting to be able to talk to it.

added on 2012-04-16 09:51:44:
kbk from #tcl noticed that LVCBase.cxx is not anywhere in the tcl sources, and further noted: "LVCbase - my guess is that's some internal piece of SAP's LiveCache... is there any possibility that some piece of enterprise software is interposing itself between [make test] and the filesystem or socket library?"

It appears nowhere in the make output, and doesn't appear to be linked in as a shared library. I'll follow up with those who administer the box to see if they're familiar with it.

added on 2012-04-16 08:52:43:

File Added - 441267: testoutput.txt

Attachments: