[PATCH] Re: The flapping posixacl.py test

Jeremy Allison jra at samba.org
Thu Jun 15 19:50:30 UTC 2017


On Thu, Jun 15, 2017 at 04:39:43PM +1200, Andrew Bartlett via samba-technical wrote:
> On Thu, 2017-06-15 at 16:10 +1200, Andrew Bartlett wrote:
> > On Thu, 2017-06-15 at 15:43 +1200, Andrew Bartlett via samba-
> > technical
> > wrote:
> > > Here are some notes on the flapping posixacl.py test:
> > > 
> > > You can line up the printed ACL against the ACL expected in
> > > posix.acl.py, but I've added the index number at the start of the
> > > first
> > > five blocks to help you line it up.  
> > > 
> > > What is going on is that the well known groups are being mapped to
> > > a
> > > GID, not a BOTH, which is what the code expects:
> > 
> > This appears to be due to a slow startup of winbindd.  When we force
> > winbindd to be very slow to start, it fails reliably.  I'm looking
> > into
> > making sure wbinfo -p returns successfully before any tests start.
> > 
> > My guess is that the 'legacy fallback' calls behave differently to
> > the
> > winbindd online calls, which we may wish to look into.
> 
> The attached patches ensure that winbindd is started before we consider
> the AD DC live.
> 
> Please review/push!

LGTM - pushed !

> Andrew Bartlett
> -- 
> Andrew Bartlett
> https://samba.org/~abartlet/
> Authentication Developer, Samba Team         https://samba.org
> Samba Development and Support, Catalyst IT   
> https://catalyst.net.nz/services/samba
> 
> 
> 

> From 5676916e3bbdd2e00d0a1604e427271d0a3782aa Mon Sep 17 00:00:00 2001
> From: Andrew Bartlett <abartlet at samba.org>
> Date: Thu, 15 Jun 2017 16:19:17 +1200
> Subject: [PATCH 1/2] selftest: Correctly print message when nbt is not up in
>  20 seconds
> 
> Signed-off-by: Andrew Bartlett <abartlet at samba.org>
> BUG: https://bugzilla.samba.org/show_bug.cgi?id=12843
> ---
>  selftest/target/Samba4.pm | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm
> index 316ef8346d9..c52c99b1759 100755
> --- a/selftest/target/Samba4.pm
> +++ b/selftest/target/Samba4.pm
> @@ -207,7 +207,7 @@ sub wait_for_start($$)
>  		}
>  		$count++;
>  	} while ($ret != 0 && $count < 20);
> -	if ($count == 10) {
> +	if ($count == 20) {
>  		warn("nbt not reachable after 20 retries\n");
>  		teardown_env($self, $testenv_vars);
>  		return 0;
> -- 
> 2.11.0
> 
> 
> From 305b2220242e1d1a6032fca498b40e24b96bb0aa Mon Sep 17 00:00:00 2001
> From: Andrew Bartlett <abartlet at samba.org>
> Date: Thu, 15 Jun 2017 16:20:11 +1200
> Subject: [PATCH 2/2] selftest: Also wait for winbindd to start
> 
> This ensures that the posixacl.py test does not race against winbindd starting up and so
> give wrong mappings
> 
> Signed-off-by: Andrew Bartlett <abartlet at samba.org>
> BUG: https://bugzilla.samba.org/show_bug.cgi?id=12843
> ---
>  selftest/target/Samba4.pm | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
> 
> diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm
> index c52c99b1759..ea81d7dd9da 100755
> --- a/selftest/target/Samba4.pm
> +++ b/selftest/target/Samba4.pm
> @@ -245,6 +245,28 @@ sub wait_for_start($$)
>  			sleep(1);
>  		}
>  	}
> +
> +	my $wbinfo =  Samba::bindir_path($self, "wbinfo");
> +
> +	$count = 0;
> +	do {
> +		my $cmd = "NSS_WRAPPER_PASSWD=$testenv_vars->{NSS_WRAPPER_PASSWD} ";
> +		$cmd .= "NSS_WRAPPER_GROUP=$testenv_vars->{NSS_WRAPPER_GROUP} ";
> +		$cmd .= "SELFTEST_WINBINDD_SOCKET_DIR=$testenv_vars->{SELFTEST_WINBINDD_SOCKET_DIR} ";
> +		$cmd .= "$wbinfo -p";
> +		$ret = system($cmd);
> +
> +		if ($ret != 0) {
> +			sleep(1);
> +		}
> +		$count++;
> +	} while ($ret != 0 && $count < 20);
> +	if ($count == 20) {
> +		warn("winbind not reachable after 20 retries\n");
> +		teardown_env($self, $testenv_vars);
> +		return 0;
> +	}
> +
>  	print $self->getlog_env($testenv_vars);
>  
>  	return $ret
> -- 
> 2.11.0
> 




More information about the samba-technical mailing list