Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

POSIX.pm test failures under FreeBSD with ZFS #12715

Closed
p5pRT opened this issue Jan 20, 2013 · 10 comments
Closed

POSIX.pm test failures under FreeBSD with ZFS #12715

p5pRT opened this issue Jan 20, 2013 · 10 comments

Comments

@p5pRT
Copy link

p5pRT commented Jan 20, 2013

Migrated from rt.perl.org#116463 (status was 'resolved')

Searchable as RT116463$

@p5pRT
Copy link
Author

p5pRT commented Jan 20, 2013

From @arc

Created by @arc

We've had a report that 5.17.8 yielded a test failure in
ext/POSIX/t/sysconf.t when run on FreeBSD 9.0 on a ZFS filesystem​:

https://gist.github.com/6adc1d4586023dc40d7f

This is suspiciously similar to a report from November 2010, but in that
case it was FreeBSD 8.1 that yielded the test failure​:

http​://www.nntp.perl.org/group/perl.perl5.porters/2010/11/msg165659.html

This is apparently caused by FreeBSD's ZFS implementation not supporting the
_PC_NO_TRUNC pathconf property. (ZFS on Solaris is not reported to trigger
the test failure.)

Perl Info

Flags:
    category=library
    severity=low
    module=POSIX

Site configuration information for perl 5.17.9:

Configured by aaron at Sun Jan 20 19:30:23 GMT 2013.

Summary of my perl5 (revision 5 version 17 subversion 9) configuration:
  Local Commit: 0133a0a987380904c32bfbd5a0540fbd2f9a8056
  Ancestor: 36baafc9b54ecc5cdea82552276a70b5218958bb
  Platform:
    osname=darwin, osvers=10.8.0, archname=darwin-2level
    uname='darwin daybreak 10.8.0 darwin kernel version 10.8.0: tue
jun 7 16:33:36 pdt 2011; root:xnu-1504.15.3~1release_i386 i386 i386
macbookpro5,4 darwin '
    config_args='-des -Dusedevel'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=undef, usemultiplicity=undef
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-fno-common -DPERL_DARWIN -fno-strict-aliasing
-pipe -fstack-protector -I/opt/local/include',
    optimize='-O3',
    cppflags='-fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe
-fstack-protector -I/opt/local/include'
    ccversion='', gccversion='4.2.1 (Apple Inc. build 5666) (dot 3)',
gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags ='
-fstack-protector -L/opt/local/lib'
    libpth=/opt/local/lib /usr/lib
    libs=-lgdbm -ldbm -ldl -lm -lutil -lc
    perllibs=-ldl -lm -lutil -lc
    libc=, so=dylib, useshrplib=false, libperl=libperl.a
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags=' -bundle -undefined dynamic_lookup
-L/opt/local/lib -fstack-protector'

Locally applied patches:



@INC for perl 5.17.9:
    lib
    /usr/local/lib/perl5/site_perl/5.17.9/darwin-2level
    /usr/local/lib/perl5/site_perl/5.17.9
    /usr/local/lib/perl5/5.17.9/darwin-2level
    /usr/local/lib/perl5/5.17.9
    .


Environment for perl 5.17.9:
    DYLD_LIBRARY_PATH (unset)
    HOME=/Users/aaron
    LANG=en_GB.UTF-8
    LANGUAGE (unset)
    LC_COLLATE=C
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
    PERL_BADLANG (unset)
    SHELL=/bin/bash

-- 
Aaron Crane ** http://aaroncrane.co.uk/

@p5pRT
Copy link
Author

p5pRT commented Jan 22, 2013

From pete@nomadlogic.org

Jim Keenan reached out to NycBUG asking for people who are running
FreeBSD-9.0 with an enabled ZFS filesystem to try to reproduce this bug.
I've attached the output, via script(1), of the following commands​:

tar xzvf perl-5.17.8.tar.gz
cd perl-5.17.8
sh ./Configure -des -Dusedevel
make
make test

I can confirm that I am seeing this issue. As mentioned before the
system is running FreeBSD-9.1-RELEASE. All filesystems on this system
(including /) are ZFS. Please let me know if you'd like me to try out
any patches or if you require additional info.

@p5pRT
Copy link
Author

p5pRT commented Jan 22, 2013

@p5pRT
Copy link
Author

p5pRT commented Jan 22, 2013

From [Unknown Contact. See original ticket]

Jim Keenan reached out to NycBUG asking for people who are running
FreeBSD-9.0 with an enabled ZFS filesystem to try to reproduce this bug.
I've attached the output, via script(1), of the following commands​:

tar xzvf perl-5.17.8.tar.gz
cd perl-5.17.8
sh ./Configure -des -Dusedevel
make
make test

I can confirm that I am seeing this issue. As mentioned before the
system is running FreeBSD-9.1-RELEASE. All filesystems on this system
(including /) are ZFS. Please let me know if you'd like me to try out
any patches or if you require additional info.

@p5pRT
Copy link
Author

p5pRT commented Jan 25, 2013

From @tonycoz

On Tue Jan 22 08​:43​:29 2013, pete_wright wrote​:

Jim Keenan reached out to NycBUG asking for people who are running
FreeBSD-9.0 with an enabled ZFS filesystem to try to reproduce this bug.
I've attached the output, via script(1), of the following commands​:

tar xzvf perl-5.17.8.tar.gz
cd perl-5.17.8
sh ./Configure -des -Dusedevel
make
make test

I can confirm that I am seeing this issue. As mentioned before the
system is running FreeBSD-9.1-RELEASE. All filesystems on this system
(including /) are ZFS. Please let me know if you'd like me to try out
any patches or if you require additional info.

I've reproduced this locally in a VM (setting a ZFS root is fun!).

Do you also see a TODO test passing for ext/POSIX/t/posix.t ?

Tony

@p5pRT
Copy link
Author

p5pRT commented Jan 25, 2013

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Jan 25, 2013

From pete@nomadlogic.org

On Fri Jan 25 04​:33​:54 2013, tonyc wrote​:

On Tue Jan 22 08​:43​:29 2013, pete_wright wrote​:

Jim Keenan reached out to NycBUG asking for people who are running
FreeBSD-9.0 with an enabled ZFS filesystem to try to reproduce this bug.
I've attached the output, via script(1), of the following commands​:

tar xzvf perl-5.17.8.tar.gz
cd perl-5.17.8
sh ./Configure -des -Dusedevel
make
make test

I can confirm that I am seeing this issue. As mentioned before the
system is running FreeBSD-9.1-RELEASE. All filesystems on this system
(including /) are ZFS. Please let me know if you'd like me to try out
any patches or if you require additional info.

I've reproduced this locally in a VM (setting a ZFS root is fun!).

Do you also see a TODO test passing for ext/POSIX/t/posix.t ?

It looks like test 3 is not OK on my system for ext/POSIX/t/posix.t​:

<snip>
[pete@​ranch /usr/home/pete/perl/perl-5.17.8]$ cd t; ./perl harness -v
../ext/POSIX/t/posix.t; cd -
 
../ext/POSIX/t/posix.t ..
1..109
ok 1 - O_RDONLY with open
ok 2 - with read
not ok 3 - read to array element # TODO read to array element not
working

# Failed (TODO) test ' read to array element'
# at t/posix.t line 63.
# got​: undef
# expected​: 'perl
# '
ok 4
ok 5 - POSIX​::pipe
ok 6
ok 7 - POSIX​::SigSet->delset
ok 8 - POSIX​::SigSet->ismember
ok 9 - sigaction SIGHUP
ok 10 - sig mask delayed SIGINT
ok 11 - masked SIGINT received # TODO freebsd 9.1-release seems to lose
blocked signals
</snip>

-p

@p5pRT
Copy link
Author

p5pRT commented Jan 25, 2013

From @tonycoz

On Fri, Jan 25, 2013 at 10​:28​:16AM -0800, Pete Wright via RT wrote​:

It looks like test 3 is not OK on my system for ext/POSIX/t/posix.t​:

<snip>
[pete@​ranch /usr/home/pete/perl/perl-5.17.8]$ cd t; ./perl harness -v
../ext/POSIX/t/posix.t; cd -

../ext/POSIX/t/posix.t ..
1..109
ok 1 - O_RDONLY with open
ok 2 - with read
not ok 3 - read to array element # TODO read to array element not
working

# Failed (TODO) test ' read to array element'
# at t/posix.t line 63.
# got​: undef
# expected​: 'perl
# '

Actually, TODO tests are expected to fail, I should have mentioned
which test, but...

ok 4
ok 5 - POSIX​::pipe
ok 6
ok 7 - POSIX​::SigSet->delset
ok 8 - POSIX​::SigSet->ismember
ok 9 - sigaction SIGHUP
ok 10 - sig mask delayed SIGINT
ok 11 - masked SIGINT received # TODO freebsd 9.1-release seems to lose
blocked signals

... you gave me the information I needed anyway.

I'll un-TODO this for 8.0 and later (it passes in my 8.1 VM).

Tony

@p5pRT
Copy link
Author

p5pRT commented Jan 27, 2013

From @tonycoz

We've had a report that 5.17.8 yielded a test failure in
ext/POSIX/t/sysconf.t when run on FreeBSD 9.0 on a ZFS filesystem​:

https://gist.github.com/6adc1d4586023dc40d7f

This is suspiciously similar to a report from November 2010, but in that
case it was FreeBSD 8.1 that yielded the test failure​:

http​://www.nntp.perl.org/group/perl.perl5.porters/2010/11/msg165659.html

This is apparently caused by FreeBSD's ZFS implementation not
supporting the
_PC_NO_TRUNC pathconf property. (ZFS on Solaris is not reported to
trigger
the test failure.)

Thank you, fixed in 9d54a69.

Tony

@p5pRT
Copy link
Author

p5pRT commented Jan 27, 2013

@tonycoz - Status changed from 'open' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant