public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* Charles: Fwd: Re: NDBM & ODBM on Cygwin?
       [not found] ` <149122724768.20020630203633@familiehaase.de>
@ 2002-07-09 23:23   ` Gerrit P. Haase
  2002-07-10 11:41     ` Charles Wilson
  0 siblings, 1 reply; 11+ messages in thread
From: Gerrit P. Haase @ 2002-07-09 23:23 UTC (permalink / raw)
  To: cygwin

Charles,

Jarkko removed NDBM_File & ODBM_File from Cygwin builds.
What do you think, should I try to reinclude them?  Is
it doing s.th. useful I'm not aware of?  I cannot remember
the reason why it was removed.  I'll try to figure out
after I know if I should reinclude it.
Someone else needs ODBM_File or NDBM_File in future?


 - This is a forwarded message:

Von    : Gerrit P. Haase <gp at familiehaase.de>
An     : perl5-porters at perl.org
Datum  : Sonntag, 30. Juni 2002, 20:36
Betreff: NDBM & ODBM on Cygwin?

===8<=================== Original Nachrichtentext ===================
Hallo Gerrit,

Am Sonntag, 30. Juni 2002 um 14:21 schriebst du:

> Hallo perl5-porters,

> In perl-5.6.1 the NDBM & ODBM extensions were build with libgdbm which
> is included in the Cygwin netrelease.

To be exact: NDBM_File & ODBM_File.  I got all tests passing, just one
test failing with NDBM_File & ODBM_File:
Failed 2/709 test scripts, 99.72% okay. 6/65198 subtests failed, 99.99% okay.
Failed Test                 Stat Wstat Total Fail  Failed  List of Failed
-----------------------------------------------------------------------------------------
.../lib/Memoize/t/tie_ndbm.t   13  3328     4    4 100.00%  1-4
op/alarm.t                                 4    2  50.00%  1-2
46 tests and 307 subtests skipped.

where tie_ndbm.t fails with this:
.../lib/Memoize/t/tie_ndbm..............Permission denied at ../lib/Memoize/t/tie_ndbm.t line 51.
dubious
        Test returned status 13 (wstat 3328, 0xd00)
DIED. FAILED tests 1-4

> What is wrong with libgdbm as base for NDBM & ODBM, why are they no
> longer build for Perl on Cygwin?


Ciao,

Gerrit
-- 
=^..^=


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-09 23:23   ` Charles: Fwd: Re: NDBM & ODBM on Cygwin? Gerrit P. Haase
@ 2002-07-10 11:41     ` Charles Wilson
  2002-07-10 15:59       ` Nicholas Wourms
  0 siblings, 1 reply; 11+ messages in thread
From: Charles Wilson @ 2002-07-10 11:41 UTC (permalink / raw)
  To: cygwin



Gerrit P. Haase wrote:

> Charles,
> 
> Jarkko removed NDBM_File & ODBM_File from Cygwin builds.
> What do you think, should I try to reinclude them?  Is
> it doing s.th. useful I'm not aware of?  I cannot remember
> the reason why it was removed.  I'll try to figure out
> after I know if I should reinclude it.
> Someone else needs ODBM_File or NDBM_File in future?


It's a core feature of perl -- so if possible we should supply it.  Why 
did Jarkko remove it?  Merely because of the one test failure?

I think the problem with ndbm is that he's using a FAT file system; 
gdbm's emulation of NDBM doesn't work on FAT -- but it's fine on NTFS.

--Chuck

> To be exact: NDBM_File & ODBM_File.  I got all tests passing, just one
> test failing with NDBM_File & ODBM_File:
> Failed 2/709 test scripts, 99.72% okay. 6/65198 subtests failed, 99.99% okay.
> Failed Test                 Stat Wstat Total Fail  Failed  List of Failed
> -----------------------------------------------------------------------------------------
> .../lib/Memoize/t/tie_ndbm.t   13  3328     4    4 100.00%  1-4
> op/alarm.t                                 4    2  50.00%  1-2
> 46 tests and 307 subtests skipped.
> 
> where tie_ndbm.t fails with this:
> .../lib/Memoize/t/tie_ndbm..............Permission denied at ../lib/Memoize/t/tie_ndbm.t line 51.
> dubious
>         Test returned status 13 (wstat 3328, 0xd00)
> DIED. FAILED tests 1-4
> 
> 
>>What is wrong with libgdbm as base for NDBM & ODBM, why are they no
>>longer build for Perl on Cygwin?
>>




--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 11:41     ` Charles Wilson
@ 2002-07-10 15:59       ` Nicholas Wourms
  2002-07-10 17:52         ` Charles Wilson
  0 siblings, 1 reply; 11+ messages in thread
From: Nicholas Wourms @ 2002-07-10 15:59 UTC (permalink / raw)
  To: Charles Wilson, cygwin


--- Charles Wilson <cwilson@ece.gatech.edu> wrote:
> 
> 
> Gerrit P. Haase wrote:
> 
> > Charles,
> > 
> > Jarkko removed NDBM_File & ODBM_File from Cygwin builds.
> > What do you think, should I try to reinclude them?  Is
> > it doing s.th. useful I'm not aware of?  I cannot remember
> > the reason why it was removed.  I'll try to figure out
> > after I know if I should reinclude it.
> > Someone else needs ODBM_File or NDBM_File in future?
> 
> 
> It's a core feature of perl -- so if possible we should supply it.  Why 
> did Jarkko remove it?  Merely because of the one test failure?
> 
> I think the problem with ndbm is that he's using a FAT file system; 
> gdbm's emulation of NDBM doesn't work on FAT -- but it's fine on NTFS.

Why not?  I'm sure there has to be a way to get around this limitation?

Cheers,
Nicholas

__________________________________________________
Do You Yahoo!?
Sign up for SBC Yahoo! Dial - First Month Free
http://sbc.yahoo.com

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 15:59       ` Nicholas Wourms
@ 2002-07-10 17:52         ` Charles Wilson
  2002-07-10 18:51           ` Robert Collins
  0 siblings, 1 reply; 11+ messages in thread
From: Charles Wilson @ 2002-07-10 17:52 UTC (permalink / raw)
  To: Nicholas Wourms; +Cc: cygwin



Nicholas Wourms wrote:


>>I think the problem with ndbm is that he's using a FAT file system; 
>>gdbm's emulation of NDBM doesn't work on FAT -- but it's fine on NTFS.
>>
> 
> Why not?  I'm sure there has to be a way to get around this limitation?


Sure -- figure out a way to implement hardlinks on FAT.

--Chuck



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 17:52         ` Charles Wilson
@ 2002-07-10 18:51           ` Robert Collins
  2002-07-10 18:58             ` Nicholas Wourms
  0 siblings, 1 reply; 11+ messages in thread
From: Robert Collins @ 2002-07-10 18:51 UTC (permalink / raw)
  To: Charles Wilson, Nicholas Wourms; +Cc: cygwin


----- Original Message ----- 
From: "Charles Wilson" <cwilson@ece.gatech.edu>
To: "Nicholas Wourms" <nwourms@yahoo.com>
 >>I think the problem with ndbm is that he's using a FAT file system; 
> >>gdbm's emulation of NDBM doesn't work on FAT -- but it's fine on NTFS.
> > Why not?  I'm sure there has to be a way to get around this limitation?
> Sure -- figure out a way to implement hardlinks on FAT.

It's called cross linked files... and checkdisk will 'fix' it :[.

Rob


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 18:51           ` Robert Collins
@ 2002-07-10 18:58             ` Nicholas Wourms
  2002-07-10 19:19               ` Robert Collins
  2002-07-10 19:21               ` Charles Wilson
  0 siblings, 2 replies; 11+ messages in thread
From: Nicholas Wourms @ 2002-07-10 18:58 UTC (permalink / raw)
  To: Robert Collins, Charles Wilson; +Cc: cygwin


--- Robert Collins <robert.collins@syncretize.net> wrote:
> 
> ----- Original Message ----- 
> From: "Charles Wilson" <cwilson@ece.gatech.edu>
> To: "Nicholas Wourms" <nwourms@yahoo.com>
>  >>I think the problem with ndbm is that he's using a FAT file system; 
> > >>gdbm's emulation of NDBM doesn't work on FAT -- but it's fine on
> NTFS.
> > > Why not?  I'm sure there has to be a way to get around this
> limitation?
> > Sure -- figure out a way to implement hardlinks on FAT.
> 
> It's called cross linked files... and checkdisk will 'fix' it :[.
> 

Then the only way to get around that is to emulate hard links, instead of
actually creating a cross-linked file?

Cheers,
Nicholas

__________________________________________________
Do You Yahoo!?
Sign up for SBC Yahoo! Dial - First Month Free
http://sbc.yahoo.com

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 18:58             ` Nicholas Wourms
@ 2002-07-10 19:19               ` Robert Collins
  2002-07-10 19:19                 ` Charles Wilson
  2002-07-10 19:21               ` Charles Wilson
  1 sibling, 1 reply; 11+ messages in thread
From: Robert Collins @ 2002-07-10 19:19 UTC (permalink / raw)
  To: Nicholas Wourms, Charles Wilson; +Cc: cygwin


----- Original Message -----
From: "Nicholas Wourms" <nwourms@yahoo.com>
To: "Robert Collins" <robert.collins@syncretize.net>; "Charles Wilson"
<cwilson@ece.gatech.edu>
Sent: Thursday, July 11, 2002 10:29 AM
Subject: Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?



> Then the only way to get around that is to emulate hard links, instead of
> actually creating a cross-linked file?

Which will require (at a minimum) a file system mid level driver - like a
virus scanning package does - to ensure that separate processes write to the
same file.

Rob


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 19:19               ` Robert Collins
@ 2002-07-10 19:19                 ` Charles Wilson
  0 siblings, 0 replies; 11+ messages in thread
From: Charles Wilson @ 2002-07-10 19:19 UTC (permalink / raw)
  To: Robert Collins; +Cc: Nicholas Wourms, cygwin



Robert Collins wrote:

>>Then the only way to get around that is to emulate hard links, instead of
>>actually creating a cross-linked file?
>>
> 
> Which will require (at a minimum) a file system mid level driver - like a
> virus scanning package does - to ensure that separate processes write to the
> same file.


AAggghh!! McAfee BSODs!

--Chuck



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 18:58             ` Nicholas Wourms
  2002-07-10 19:19               ` Robert Collins
@ 2002-07-10 19:21               ` Charles Wilson
  2002-07-11  6:30                 ` Nicholas Wourms
  1 sibling, 1 reply; 11+ messages in thread
From: Charles Wilson @ 2002-07-10 19:21 UTC (permalink / raw)
  To: Nicholas Wourms; +Cc: Robert Collins, cygwin



Nicholas Wourms wrote:

>>>Sure -- figure out a way to implement hardlinks on FAT.
>>>
>>It's called cross linked files... and checkdisk will 'fix' it :[.
>>
>>
> 
> Then the only way to get around that is to emulate hard links, instead of
> actually creating a cross-linked file?


ndbm requires that both the .pag file and .dir file have exactly the 
same timestamp.  Since gdbm actually implements "ndbm" functionality by 
putting a "native format" gdbm database into .pag, it simply hardlinks 
the .dir file to .pag, thus insuring that the timestamps are always 
identical -- and that file accesses are atomic.

There may be other ways to solve the underlying problem -- but that 
would make cygwin-gdbm's ndbm-emulation different from the rest of the 
world.  And, since any algorithm mod would change the on-disk format of 
gdbm-in-ndbm-mode, I doubt it would be accepted as a global mod.

For instance, we could instead have two separate files, one is empty. 
All file accesses to .pag are accompanied by 'touch .dir' -- but that's 
not atomic, AND .dir is no longer itself a valid database.  The folks on 
linux certainly don't want to see that backwards incompatible format 
change -- just to help US with a problem that only appears in certain 
cases (using ndbm emulation on FAT drives).

--Chuck



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-10 19:21               ` Charles Wilson
@ 2002-07-11  6:30                 ` Nicholas Wourms
  2002-07-11  8:26                   ` Charles Wilson
  0 siblings, 1 reply; 11+ messages in thread
From: Nicholas Wourms @ 2002-07-11  6:30 UTC (permalink / raw)
  To: Charles Wilson; +Cc: Robert Collins, cygwin


--- Charles Wilson <cwilson@ece.gatech.edu> wrote:
> 
> 
> Nicholas Wourms wrote:
> 
> >>>Sure -- figure out a way to implement hardlinks on FAT.
> >>>
> >>It's called cross linked files... and checkdisk will 'fix' it :[.
> >>
> >>
> > 
> > Then the only way to get around that is to emulate hard links, instead
> of
> > actually creating a cross-linked file?
> 
> 
> ndbm requires that both the .pag file and .dir file have exactly the 
> same timestamp.  Since gdbm actually implements "ndbm" functionality by 
> putting a "native format" gdbm database into .pag, it simply hardlinks 
> the .dir file to .pag, thus insuring that the timestamps are always 
> identical -- and that file accesses are atomic.
> 
> There may be other ways to solve the underlying problem -- but that 
> would make cygwin-gdbm's ndbm-emulation different from the rest of the 
> world.  And, since any algorithm mod would change the on-disk format of 
> gdbm-in-ndbm-mode, I doubt it would be accepted as a global mod.
> 
> For instance, we could instead have two separate files, one is empty. 
> All file accesses to .pag are accompanied by 'touch .dir' -- but that's 
> not atomic, AND .dir is no longer itself a valid database.  The folks on
> 
> linux certainly don't want to see that backwards incompatible format 
> change -- just to help US with a problem that only appears in certain 
> cases (using ndbm emulation on FAT drives).

That seems to be one solution, I agree.  Perhaps the section of code
dealing with the database format could be ifdef'ed to do this.  With the
caveat that and movement of the database to another machine would require
a database dump due to differences in formats.  Still there ought to be a
way to trick cygwin, and thus any applications using cygwin's api, into
thinking that the link created is an actual "hard link".  In this way we
force windows to accomodate us instead of the other way around.  Look at
it from my perspective, I've been loathe to upgrade to nt and ntfs due to
the multitude of "issues" people encounter with ntsec.  Don't get me
wrong, I appreciate the effort, but it seems like the documented methods
of setting up ntsec do not work OOTB for a lot of people, requiring a
massive research of the ml archives.  If I ever do it, I promise I'll
document all the exceptions w/ solutions I find in the ml archives,
because IMHO, setting up ntsec should be easy.  Yes, I'm sure it is easy
to some of you, but the amount of requests for help leads me to conclude
that it is not a seamless as it could be.  Again, my experience with NT
programming is extremely limited, so I can offer only observations at this
point.  My solution: a consilidation of the various exceptions and their
solutions should be documented in a single place.  Also, some of the more
common "gotchas" regarding services & ntsec should be covered as well. 
Perhaps a special section in the FAQ covering these solutions would be
advisable.  Contrary to what Chris believes, I am of the school that
believes that a FAQ can never be too big and that there is always room for
more documentation.  But I digress, I guess my point is that I hope
someone, who is more familiar then I, might considier seeing if this
emulation is possible and how best to do it.  Considier this would mean
one less issue to have to deal with when porting applications requiring
hard links.  If not, then oh well...  But don't complain if people like
Jakko turn off support for operations involving hard links.  They are,
after all, primarily concerned with the port running on their own
machines.  I guess what I'm trying to say is:
"Just because we are using 9x doesn't mean you have to treat us like
rubbish..."  (Just Kidding, but you see how we might feel)  :-)

Cheers,
Nicholas

P.S. - Before you say so, I am aware of the limitations of the FAT
filesystem.  All I'm saying is that there is always a solution to a
problem.  This solution shouldn't require having to switch operating
systems.  This is mainly a persuasive argument aimed at someone thinking
outside the norms and figuring out a way to do this so that everyone will
be happy.  I'm sure people balked back in '96 at the thought of a posix
emulation layer in windows.  I'm sure they said, "Why don't you just use
linux, it's free and it already works".  Look at how far Cygwin has come
today, and judging by slashdot, this perception has changed as well.

__________________________________________________
Do You Yahoo!?
Sign up for SBC Yahoo! Dial - First Month Free
http://sbc.yahoo.com

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Charles: Fwd: Re: NDBM & ODBM on Cygwin?
  2002-07-11  6:30                 ` Nicholas Wourms
@ 2002-07-11  8:26                   ` Charles Wilson
  0 siblings, 0 replies; 11+ messages in thread
From: Charles Wilson @ 2002-07-11  8:26 UTC (permalink / raw)
  To: Nicholas Wourms; +Cc: Robert Collins, cygwin



Nicholas Wourms wrote:

 
> P.S. - Before you say so, I am aware of the limitations of the FAT
> filesystem.  All I'm saying is that there is always a solution to a
> problem. 



But there's no guarantee that the solution is
   a) within your budget
   b) can be accomplished within a finite time period
   c) is worth the effort.
All of this takes time -- time that could be better used in other areas. 
  I'm not interested in getting that particular subset of gdbm working 
on FAT -- I've looked into it, and IMO the effort and time involved is 
huge; the opportunity cost (in the macroeconomic sense) is too great.

That's why cvs has the hacks that it does; it was more efficient to fix 
the FAT drive problem there, rather than in gdbm.

--Chuck



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2002-07-11 14:09 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <45100201091.20020630142110@familiehaase.de>
     [not found] ` <149122724768.20020630203633@familiehaase.de>
2002-07-09 23:23   ` Charles: Fwd: Re: NDBM & ODBM on Cygwin? Gerrit P. Haase
2002-07-10 11:41     ` Charles Wilson
2002-07-10 15:59       ` Nicholas Wourms
2002-07-10 17:52         ` Charles Wilson
2002-07-10 18:51           ` Robert Collins
2002-07-10 18:58             ` Nicholas Wourms
2002-07-10 19:19               ` Robert Collins
2002-07-10 19:19                 ` Charles Wilson
2002-07-10 19:21               ` Charles Wilson
2002-07-11  6:30                 ` Nicholas Wourms
2002-07-11  8:26                   ` Charles Wilson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).