[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Bug in Random File Access
Hi, Folks !
In Symbolics 3600 Zwei in Genera 7.1, Mailer 5.13, Print Spooler 3.10,
GMD Site System 3.0, IP-TCP 52.16, Experimental Fontification 3.1,
microcode 3670-MIC 396, FEP 127, FEP0:>v127-lisp.flod(55),
FEP0:>v127-loaders.flod(55), FEP0:>v127-debug.flod(34),
FEP0:>v127-info.flod(55), on GRASPIN 1:
The following bug concerns the Random Access File capability of Genera
7.1 . I tried to open a file in random access mode an another host with
the following code. There are no hints in Manual 5, that my options to
opening a file are inconsistent.
(defun do-it (&optional (path "aid:>krey>network>atu_2.lisp"))
(setq path (fs:parse-pathname path))
(with-open-file (in path :direction :input :direct t)
(read-record in 0 10)))
I think I remember this working in Rel 6.x
As you'll see from the trace of the stepper output, my function
READ-RECORD doesn't even get a chance to run - the open fails!
(step (do-it))
(DO-IT)
"aid:>krey>network>atu_2.lisp" "aid:>krey>network>atu_2.lisp"
(BLOCK DO-IT
(SETQ PATH (FS:PARSE-PATHNAME PATH))
(SI:DIGESTED-LET (LET ((SI:.STREAM-ABORT-FLAG. ':ABORT)
(IN (OPEN PATH :DIRECTION :INPUT :DIRECT T)))
(UNWIND-PROTECT (MULTIPLE-VALUE-PROG1 (PROGN (READ-
(SETQ PATH (FS:PARSE-PATHNAME PATH)) #P"AID:>krey>network>atu_2.lisp"
(SI:DIGESTED-LET (LET ((SI:.STREAM-ABORT-FLAG. ':ABORT)
(IN (OPEN PATH :DIRECTION :INPUT :DIRECT T)))
(UNWIND-PROTECT (MULTIPLE-VALUE-PROG1 (PROGN (READ-RE
':ABORT :ABORT
(OPEN PATH :DIRECTION :INPUT :DIRECT T)
Error: Attempt to read from direct-access input-stream #<NFILE-INPUT-DIRECT-BINARY-STREAM "AID:>krey>network>atu_2.lisp" 71326707> without having prefetched bytes.
While in the function (FLAVOR:WHOPPER :NEXT-INPUT-BUFFER SI:DIRECT-ACCESS-BUFFERED-INPUT-STREAM-MIXIN) (FLAVOR:COMBINED :NEXT-INPUT-BUFFER FS:NFILE-INPUT-DIRECT-BINARY-STREAM) (FLAVOR:METHOD :SETUP-NEXT-INPUT-BUFFER SI:BASIC-BUFFERED-INPUT-STREAM)
The condition signalled was ZL:FERROR
Thanks for any help
Juergen Krey