develooper Front page | perl.perl5.porters | Postings from December 2008

Re: Smoke [5.11.0] 35082 FAIL(m) MSWin32 WinXP/.Net SP3 (x86/2 cpu)

Thread Previous | Thread Next
From:
Nicholas Clark
Date:
December 13, 2008 15:00
Subject:
Re: Smoke [5.11.0] 35082 FAIL(m) MSWin32 WinXP/.Net SP3 (x86/2 cpu)
Message ID:
20081213225946.GY51978@plum.flirble.org
On Sat, Dec 13, 2008 at 10:50:00PM +0000, Steve Hay wrote:
> Automated smoke report for 5.11.0 patch 35082
> maldoror.bath.planit.group: Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz(~2660 MHz) (x86/2 cpu)
>     on        MSWin32 - WinXP/.Net SP3
>     using     ? unknown cc version 
>     smoketime 1 minute 11 seconds (average 3.550 seconds)

>    35082     Configuration (common) -DCCTYPE=BORLAND -DINST_TOP=$(INST_DRV)\Smoke\doesntexist
> ----------- ---------------------------------------------------------
> m m         
> m m         -Dusemymalloc
> m m         -Duselargefiles
> m m         -Duselargefiles -Dusemymalloc
> m m         -Duseithreads -Uuseimpsys
> m m         -Duseithreads -Uuseimpsys -Dusemymalloc
> m m         -Duseithreads -Uuseimpsys -Duselargefiles
> m m         -Duseithreads -Uuseimpsys -Duselargefiles -Dusemymalloc
> m m         -Duseithreads
> m m         -Duseithreads -Duselargefiles
> | +--------- -DDEBUGGING
> +----------- no debugging

Given the only changes from last night's PASS in blead was 35082, it has to
be the cause. Presumably

a: Something in the build, at least in Win32, is using in place editing
b: Permissions there don't mean what they do on Unix, with some significant
   side effect

Although it happens *really* fast. 3.55 seconds per fail. So it's stranger...

But I have no idea what, as the smoke client doesn't provide a log for this.
I guess we wait until Monday, unless anyone else can run a Win32 build.

Nicholas Clark

Change 35082 by rgs@scipion on 2008/12/13 14:01:03

	Subject: Re: [perl #60904] Race condition with perl -i.bk
	From: Chip Salzenberg <chip@pobox.com>
	Date: Mon, 1 Dec 2008 15:01:12 -0800
	Message-ID: <20081201230112.GH31089@tytlal.topaz.cx>
	
	Use mode 0600 (minus umask) for creation of the new file with -i

Affected files ...

... //depot/perl/doio.c#379 edit

Differences ...

==== //depot/perl/doio.c#379 (text) ====

@@ -811,8 +811,7 @@
 		    do_close(gv,FALSE);
 		    (void)PerlLIO_unlink(SvPVX_const(sv));
 		    (void)PerlLIO_rename(PL_oldname,SvPVX_const(sv));
-		    do_open(gv,(char*)SvPVX_const(sv),SvCUR(sv),PL_inplace!=0,
-			    O_RDONLY,0,NULL);
+		    do_open(gv,(char*)SvPVX_const(sv),SvCUR(sv),TRUE,O_RDONLY,0,NULL);
 #endif /* DOSISH */
 #else
 		    (void)UNLINK(SvPVX_const(sv));
@@ -844,17 +843,15 @@
 #endif
 		}
 
-		sv_setpvn(sv,">",!PL_inplace);
-		sv_catpvn(sv,PL_oldname,oldlen);
+		sv_setpvn(sv,PL_oldname,oldlen);
 		SETERRNO(0,0);		/* in case sprintf set errno */
+		if (!do_open(PL_argvoutgv,(char*)SvPVX_const(sv),SvCUR(sv),TRUE,
 #ifdef VMS
-		if (!do_open(PL_argvoutgv,(char*)SvPVX_const(sv),SvCUR(sv),
-			     PL_inplace!=0,O_WRONLY|O_CREAT|O_TRUNC,0,NULL))
+			     O_WRONLY|O_CREAT|O_TRUNC,0,
 #else
-		    if (!do_open(PL_argvoutgv,(char*)SvPVX_const(sv),SvCUR(sv),
-			     PL_inplace!=0,O_WRONLY|O_CREAT|OPEN_EXCL,0666,
+			     O_WRONLY|O_CREAT|OPEN_EXCL,0600,
+#endif
 			     NULL))
-#endif
 		{
 		    if (ckWARN_d(WARN_INPLACE))	
 		        Perl_warner(aTHX_ packWARN(WARN_INPLACE), "Can't do inplace edit on %s: %s",

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