[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