develooper Front page | perl.perl5.porters | Postings from September 2014

Re: [perl #121600] atomic replacement in lib/ during build

Thread Previous | Thread Next
From:
Karl Williamson
Date:
September 24, 2014 03:36
Subject:
Re: [perl #121600] atomic replacement in lib/ during build
Message ID:
54223C2B.9090701@khwilliamson.com
On 09/23/2014 07:10 PM, Father Chrysostomos via RT wrote:
> On Tue Sep 23 18:04:02 2014, jkeenan wrote:
>> On Tue Apr 08 05:23:04 2014, zefram@fysh.org wrote:
>>>
>>> This is a bug report for perl from zefram@fysh.org,
>>> generated with the help of perlbug 1.39 running under perl 5.14.2.
>>>
>>>
>>> -----------------------------------------------------------------
>>> [Please describe your issue here]
>>>
>>> During build, we put lib/ at the end of @INC, to avoid parallel
>>> builds
>>> seeing incomplete versions of Perl modules, as modules get installed
>>> there non-atomically.  To make parallel builds work more cleanly, we
>>> should arrange for installations of modules into lib/ to be atomic,
>>> by
>>> means of non-atomically writing a file under a modified name and then
>>> atomically renaming the complete file to its permanent name.  I
>>> believe
>>> this is possible on all platforms.  If we do this, it will be safe to
>>> put
>>> lib/ first thing in @INC, gaining a small speedup because most
>>> modules
>>> are in fact found there.
>>>
>>
>> This Apri 2014 motion for a revision in a procedure has not yet
>> received a second.
>>
>> Would anyone want to speak on its behalf?
>
> It sounds like a good idea.  I hope you don’t now expect me to implement it. :-)
>
> I think this only requires perl knowledge.  The code in question is (I believe) in make_ext.pl and ExtUtils::MakeMaker.  The ordering of @INC during building is determined by write_buildcustomize.pl.
>

I also think it sounds good, but am not volunteering to do it.

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About