CHAA006%vaxb.rhbnc.ac.uk@Cs.Ucl.AC.UK.UUCP (01/29/87)
>>> $ define/system/exec/translat=concealed psy$local - >>> _dua0:[local.],dub0:[local.] >>> This definition works correctly when reading files from either >>> physical disk, but if an attempt is made to write to the second disk >>> in the search path, the write fails.... >>> This happens consistently. Anyone have any answers? Sounds like the defined behaviour to me. As I understand it, one can _read_ from all members of a search list, but only _write_ to the first-named (DEC's interpretation of primogeniture ?). ** Phil. Philip Taylor (Royal Holloway & Bedford New College; University of London; U.K) Bitnet/NetNorth/Earn: chaa006@vaxa.rhbnc.ac.uk (or) chaa006%rhbnc.vaxa@ac.uk (or) : chaa006@vaxb.rhbnc.ac.uk (or) chaa006%rhbnc.vaxb@ac.uk Arpa : chaa006%vaxa.rhbnc.ac.uk@ucl-cs.arpa (or) : chaa006%vaxb.rhbnc.ac.uk@ucl-cs.arpa
hamm@WAKS.RUTGERS.EDU.UUCP (01/29/87)
>> $ define/system/exec/translat=concealed psy$local - >> _dua0:[local.],dub0:[local.] >> This definition works correctly when reading files from either >> physical disk, but if an attempt is made to write to the second disk >> in the search path, the write fails.... >> This happens consistently. Anyone have any answers? > Sounds like the defined behaviour to me. As I understand it, one can _read_ > from all members of a search list, but only _write_ to the first-named (DEC's > interpretation of primogeniture ?). ** Phil. > Philip Taylor (Royal Holloway & Bedford New College; University of London; U.K) I think Phil is right about this, but it *is* extremely difficult to find this out from the documentation. If you follow the indexing path through the DCL Dictionary, Guide to File Applications, etc., you find lots of instructions about how to *specify* search lists, but all of the examples involve *reading* files, not writing them. There are all sorts of uses of DIRECTORY, TYPE, etc., but not even a simple CREATE. It seems reasonable that writing to a file whose location involves a search list will result in that file being written to the first valid location found. However, in the case originally cited, the specified directory *did not exist* on the first device specified on the search list, but did exist on the second device. Reasonable behaviour here would be to write the file on the second device, especially in view of this statement in the "Guide to VAX/VMS File Applications" (section 5.2.3): When a search list is used, RMS ignores certain errors as it searches for a matching file: Invalid device name (RMS$_DEV); Device not ready or mounted (RMS$_DNR); **Directory not found (RMS$_DNF)**; File not found (RMS$_FNF); Privilege violation (RMS$_PRV). I can't find any statement that this applies on read only, but I'm no RMS wizard. Can anyone point us all to a place in the manual set which defines what search lists are supposed to do upon write? Greg Hamm Rutgers Molecular Biology Computing Lab hamm@biovax.bitnet hamm@waks.rutgers.edu ------
S211KENO@HTIKHT5.BITNET.UUCP (02/26/87)
It appears DCL-commands handle search-lists in a different way. The following DCL-commands are an example. The OPEN command behaviour is very confusing, it tells you it can't find the directory while it should end up with a privilege violation, like the TYPE command does. $ sh log useral "USERAL" = "SYS$LOGIN_DEVICE:" (LNM$SYSTEM_TABLE) = "USER01:" = "USER02:" = "USER03:" = "USER04:" = "USER05:" = "USER06:" = "USER10:" 1 "SYS$LOGIN_DEVICE" = "USER01:" (LNM$JOB_803AFF90) 2 "USER01" = "KUBHC1$DUA1:" (LNM$SYSTEM_TABLE) 1 "USER01" = "KUBHC1$DUA1:" (LNM$SYSTEM_TABLE) 1 "USER02" = "KUBHC1$DUA2:" (LNM$SYSTEM_TABLE) 1 "USER03" = "KUBHC1$DUA0:" (LNM$SYSTEM_TABLE) 1 "USER04" = "KUBHC1$DUA7:" (LNM$SYSTEM_TABLE) 1 "USER05" = "KUBHC1$DUA6:" (LNM$SYSTEM_TABLE) 1 "USER06" = "KUBHC1$DUA8:" (LNM$SYSTEM_TABLE) 1 "USER10" = "KUBHC1$DUA10:" (LNM$SYSTEM_TABLE) $ type useral:[s211.kees]ident.com %TYPE-W-OPENIN, error opening USER01:[S211.KEES]IDENT.COM;2 as input -RMS-E-PRV, insufficient privilege or file protection violation $ open/read tmp user01:[s211.kees]ident.com %DCL-E-OPENIN, error opening USER01:[S211.KEES]IDENT.COM; as input -RMS-E-PRV, insufficient privilege or file protection violation $ open/read tmp useral:[s211.kees]ident.com %DCL-E-OPENIN, error opening USER10:[S211.KEES]IDENT.COM; as input -RMS-E-DNF, directory not found -SYSTEM-W-NOSUCHFILE, no such file Have I missed something in the documentation (I studied DCL-dictionary and File applications) or is there anybody who could explain this ? -------------- Kees Noyens Tilburg University Netherlands