On 15/08/05, Carl Friedberg <[EMAIL PROTECTED]> wrote:
> sebb wrote:
> > JEM wrote:
> > > Test 7 is failing because normally on VMS, unless you
> > specify otherwise,
> > > you get exclusive access to the file, so the second open is failing.
> > >
> > > The logical name DECC$FILE_SHARING defined as "ENABLE" will
> > change VMS
> > > behavior to that of UNIX which will allow test 7 to pass.
> > >
> > > I can probably come up with some code to have the script on VMS make
> > > sure that that value is set and to clear it on exit.
> >
> > Would it not be better to fix the VMS Perl open() call so it works the
> > same as on other OSes?

I meant for READ access only here.

> 
> I'll jump in here with my own 2-cents worth.
> 
> On VMS, the default behavior makes sense. VMS is a
> multi-user system, and when you open a file, the
> default access is exclusive. VMS has rich file
> sharing semantics, so it is easy to change this
> behavior; but a VMS user expects default access
> to be exclusive.

I use VMS and I don't ... 

For example, the VMS TYPE command allows one to look at the contents
of batch LOG files, but Perl cannot _read_ the same file without the
work-round above (or vmsopen() with suitable parameters).
 
> Changing this behavior to conform to perl usage on
> other OSes could be a configuration option; but
> the default "no surprise" behavior should be
> exclusive access.

IMO, the surprise in this case is that Perl can't open a file that TYPEs OK ...
 
> Most of the files I use within Perl are flat text
> files where file sharing would not be feasible.

Not even _read_ access?

> If a VMS programmer is working on a VMS
> "RMS indexed" or "RMS relative" file organization,
> then a different sharing option might be
> appropriate, but that needs to be dealt with in
> VMS-specfic .xs files that manipulate those files.
> 
> Again, just my 2 cents.
> 
> Carl Friedberg
> [EMAIL PROTECTED]
> +1.212.233.5470
> www.comets.com
> 
> 
>

Reply via email to