delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/04/06/02:32:21

From: pjfarley AT banet DOT net (Peter J. Farley III)
Newsgroups: comp.os.msdos.djgpp
Subject: Possible bash v2.03 file handle leak?
Date: Thu, 06 Apr 2000 04:20:32 GMT
Message-ID: <38ec08c9.9897979@news3.banet.net>
X-Newsreader: Forte Free Agent 1.21/32.243
NNTP-Posting-Host: 32.100.84.75
X-Trace: 6 Apr 2000 04:18:52 GMT, 32.100.84.75
Organization: Global Network Services - Remote Access Mail & News Services
Lines: 67
X-Complaints-To: abuse AT prserv DOT net
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

I'd like to report a possible bash v2.03 bug.  It may be a file handle
leak, but please tell me if I'm wrong.

Details:  I'm helping with Andy Sumner's Awka project (see below for
website info) by configuring and testing under DJGPP for him.  His
latest beta makes cleanly under DJGPP v2.03, but the "make check"
suite fails at the next-to-last test in the suite when using the
latest release of bash v2.03.  The entire "make check" suite seems to
work fine when run with a slightly earlier release of bash v2.03.

The failure is not consistant.  It definitely occurs when performing
the entire build in one DOS session.  I.E., doing all of these in one
session will cause the failure each time with the latest release of
bash v2.03:

bash autoconf
bash ./configdj
make
make check

If I exit the DOS box and restart at the "make check", sometimes it
works and sometimes it fails.  I have not been able to establish an
accurate pattern of failure so far.

The failing test produces these messages:

sopen: unable to open file 'junk/30' for write access.
make.exe[1]: *** [manyfiles] Error 1

The partition I'm running this on has 1.8GB available disk space
(FAT16 file system, not FAT32).

The bash version that may be causing a failure is:

GNU bash, version 2.03.0(1)-release (i386-pc-msdosdjgpp) r0.6

The version that seems to allow "make check" to complete is:

GNU bash, version 2.03.0(1)-release (i386-pc-msdosdjgpp) r0.4

I would love to provide a simpler example of the problem, but I
haven't been able to make one up yet, though I'm still trying to do
so.  I will post one if I can get it to fail consistantly.

The test in Awka which fails is target "manyfiles" in the test
subdirectory.  It is specifically designed to stress-test the Awka
project by leaving open as many file handles as possible.  Originally,
Andy was using a test that kept open 100 files, but I talked him down
to 32 as a reasonable number for DOS machines.  "make manyfiles" in
the test subdirectory works fine.  Just "make" in the test
subdirectory will (sometimes) fail the "manyfiles" test, and similarly
for "make check" from the main directory.

Andy's Awka website is <http://www.linuxstart.com/~awka/index.html>.
Go to the download area to get a copy, and read the INSTALL.DJG file
for instructions on building under DJGPP.

My environment is Win98(SE) DOS box, LFN=Y.  Awka is not LFN-clean
yet, so making it under plain DOS is not an option at this time.  I do
NOT have FILES= in my CONFIG.SYS, which under Win98(SE) is *supposed*
to mean that the system automatically provides FILES=127 as a default.

TIA for any help or info you can provide.

----------------------------------------------------
Peter J. Farley III (pjfarley AT nospam DOT dorsai DOT org OR
                     pjfarley AT nospam DOT banet DOT net)

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019