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

BBC: ce6f496d72 breaks MONGODB/BSON-v1.8.1.tar.gz #16712

Closed
p5pRT opened this issue Oct 7, 2018 · 11 comments
Closed

BBC: ce6f496d72 breaks MONGODB/BSON-v1.8.1.tar.gz #16712

p5pRT opened this issue Oct 7, 2018 · 11 comments

Comments

@p5pRT
Copy link

p5pRT commented Oct 7, 2018

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

Searchable as RT133565$

@p5pRT
Copy link
Author

p5pRT commented Oct 7, 2018

From @andk

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009
--
andreas
PS​: perl, perl, perl

@p5pRT
Copy link
Author

p5pRT commented Oct 7, 2018

From @jkeenan

On Sun, 07 Oct 2018 12​:11​:36 GMT, andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl -I/testing/blead/lib -v | head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-g631637d8aa)) built for x86_64-linux

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove -I/testing/blead/lib -b t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13 cusr 0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I was able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

The failure in your report (http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-24c27b903acc) looks like this​:

#####
  # Failed test 'native_to_relaxed_extended_json(json_to_native(rEJ)) = rEJ'
  # at t/lib/CorpusTest.pm line 255.
  # got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
  # expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
  # Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional config_args the regression appears.

For reference, the .json data in the BSON test suite looks like this​:

#####
  "valid"​: [
...
  {
  "description"​: "positive ms",
  "canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
  "relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-24T12​:15​:30.501Z\"}}",
  "canonical_extjson"​: "{\"a\" : {\"$date\" : {\"$numberLong\" : \"1356351330501\"}}}"
  },
#####

Thank you very much.
--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Oct 7, 2018

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

@p5pRT
Copy link
Author

p5pRT commented Oct 7, 2018

From @jkeenan

On Sun, 07 Oct 2018 13​:30​:19 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 12​:11​:36 GMT,
andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with
relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl -I/testing/blead/lib -v
| head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove -I/testing/blead/lib -b
t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13 cusr
0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I was
able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

The failure in your report
(http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-
24c27b903acc) looks like this​:

#####
# Failed test 'native_to_relaxed_extended_json(json_to_native(rEJ))
= rEJ'
# at t/lib/CorpusTest.pm line 255.
# got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
# expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
# Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional config_args the
regression appears.

Further investigation indicates that the regression in the BSON test with respect to perl-5.28.0 becomes manifest when '-Duselongdouble' is added to the configuration arguments.

I built perl at v5.28.0 and at blead with only 'Duselongdouble' -- no ithreads or DEBUGGING. I used cpanm in each case to try to install BSON. The test failure did not appear at v5.28.0, only at blead.

For reference, the .json data in the BSON test suite looks like this​:

#####
"valid"​: [
...
{
"description"​: "positive ms",
"canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
"relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-
24T12​:15​:30.501Z\"}}",
"canonical_extjson"​: "{\"a\" : {\"$date\" : {\"$numberLong\" :
\"1356351330501\"}}}"
},
#####

Thank you very much.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Oct 7, 2018

From @Tux

On Sun, 07 Oct 2018 06​:30​:20 -0700, "James E Keenan via RT"
<perlbug-followup@​perl.org> wrote​:

On Sun, 07 Oct 2018 12​:11​:36 GMT, andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009 

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl -I/testing/blead/lib -v | head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-g631637d8aa)) built for x86_64-linux

This is not a longdouble build!

This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-g631637d8aa)) built for x86_64-linux-thread-multi-ld

Note the -ld at the end. The bug report specifically stated a failed
with -Duselongdouble

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove -I/testing/blead/lib -b t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13 cusr 0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I was able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

Can you verify that the perl that was built was actually a longdouble
build?

$ perl -V​:'(long)?d(ou)?ble?size'
doublesize='8';
longdblsize='16';

The failure in your report (http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-24c27b903acc) looks like this​:

#####
# Failed test 'native_to_relaxed_extended_json(json_to_native(rEJ)) = rEJ'
# at t/lib/CorpusTest.pm line 255.
# got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
# expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
# Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional config_args the regression appears.

For reference, the .json data in the BSON test suite looks like this​:

#####
"valid"​: [
...
{
"description"​: "positive ms",
"canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
"relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-24T12​:15​:30.501Z\"}}",
"canonical_extjson"​: "{\"a\" : {\"$date\" : {\"$numberLong\" : \"1356351330501\"}}}"
},
#####

Thank you very much.

--
H.Merijn Brand http​://tux.nl Perl Monger http​://amsterdam.pm.org/
using perl5.00307 .. 5.29 porting perl5 on HP-UX, AIX, and openSUSE
http​://mirrors.develooper.com/hpux/ http​://www.test-smoke.org/
http​://qa.perl.org http​://www.goldmark.org/jeff/stupid-disclaimers/

@p5pRT
Copy link
Author

p5pRT commented Oct 7, 2018

From @jkeenan

On Sun, 07 Oct 2018 14​:30​:35 GMT, hmbrand wrote​:

On Sun, 07 Oct 2018 06​:30​:20 -0700, "James E Keenan via RT"
<perlbug-followup@​perl.org> wrote​:

On Sun, 07 Oct 2018 12​:11​:36 GMT,
andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with
relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl -I/testing/blead/lib -v
| head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux

This is not a longdouble build!

I know.

This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux-thread-multi-ld

Note the -ld at the end. The bug report specifically stated a failed
with -Duselongdouble

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove -I/testing/blead/lib
-b t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13 cusr
0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I was
able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

Can you verify that the perl that was built was actually a longdouble
build?

$ perl -V​:'(long)?d(ou)?ble?size'
doublesize='8';
longdblsize='16';

Yes, the last build was longdouble​:

$ ./bin/perl -Ilib -V | grep config_args
  config_args='-des -Dusedevel -Duselongdouble -Dprefix=/home/jkeenan/testing/v5.28.0 -Uversiononly -Dman1dir=none -Dman3dir=none'

$ ./bin/perl -V​:'(long)?d(ou)?ble?size'
doublesize='8';
longdblsize='16';

The failure in your report
(http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-
24c27b903acc) looks like this​:

#####
# Failed test 'native_to_relaxed_extended_json(json_to_native(rEJ))
= rEJ'
# at t/lib/CorpusTest.pm line 255.
# got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
# expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
# Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional config_args
the regression appears.

For reference, the .json data in the BSON test suite looks like this​:

#####
"valid"​: [
...
{
"description"​: "positive ms",
"canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
"relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-
24T12​:15​:30.501Z\"}}",
"canonical_extjson"​: "{\"a\" : {\"$date\" : {\"$numberLong\"
: \"1356351330501\"}}}"
},
#####

Thank you very much.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Oct 7, 2018

From @Tux

On Sun, 07 Oct 2018 08​:29​:23 -0700, "James E Keenan via RT"
<perlbug-followup@​perl.org> wrote​:

On Sun, 07 Oct 2018 14​:30​:35 GMT, hmbrand wrote​:

On Sun, 07 Oct 2018 06​:30​:20 -0700, "James E Keenan via RT"
<perlbug-followup@​perl.org> wrote​:

On Sun, 07 Oct 2018 12​:11​:36 GMT,
andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:
[...]

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with
relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl -I/testing/blead/lib -v
| head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux

This is not a longdouble build!

I know.

This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux-thread-multi-ld

Note the -ld at the end. The bug report specifically stated a failed
with -Duselongdouble

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove -I/testing/blead/lib
-b t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13 cusr
0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I was
able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

Can you verify that the perl that was built was actually a longdouble
build?

$ perl -V​:'(long)?d(ou)?ble?size'
doublesize='8';
longdblsize='16';

Yes, the last build was longdouble​:

$ ./bin/perl -Ilib -V | grep config_args
config_args='-des -Dusedevel -Duselongdouble -Dprefix=/home/jkeenan/testing/v5.28.0 -Uversiononly -Dman1dir=none -Dman3dir=none'

FYI, this is builtin functionality, as shown in my previous example.

$ ./perl -Ilib -V​:config_args
config_args='-Dusedevel -Dusethreads -Duseithreads -Duselongdouble -Duse64bitall -des';

or, as it supports full perl regular expressions​:

$ ./perl -Ilib -V​:config.*
config_arg0='./Configure';
config_arg1='-Dusedevel';
config_arg2='-Dusethreads';
config_arg3='-Duseithreads';
config_arg4='-Duselongdouble';
config_arg5='-Duse64bitall';
config_arg6='-des';
config_argc='6';
config_args='-Dusedevel -Dusethreads -Duseithreads -Duselongdouble -Duse64bitall -des';

$ ./bin/perl -V​:'(long)?d(ou)?ble?size'
doublesize='8';
longdblsize='16';

As in that :)

The failure in your report
(http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-
24c27b903acc) looks like this​:

#####
# Failed test 'native_to_relaxed_extended_json(json_to_native(rEJ))
= rEJ'
# at t/lib/CorpusTest.pm line 255.
# got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
# expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
# Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional config_args
the regression appears.

For reference, the .json data in the BSON test suite looks like this​:

#####
"valid"​: [
...
{
"description"​: "positive ms",
"canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
"relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-
24T12​:15​:30.501Z\"}}",
"canonical_extjson"​: "{\"a\" : {\"$date\" : {\"$numberLong\"
: \"1356351330501\"}}}"
},
#####

Thank you very much.

--
H.Merijn Brand http​://tux.nl Perl Monger http​://amsterdam.pm.org/
using perl5.00307 .. 5.29 porting perl5 on HP-UX, AIX, and openSUSE
http​://mirrors.develooper.com/hpux/ http​://www.test-smoke.org/
http​://qa.perl.org http​://www.goldmark.org/jeff/stupid-disclaimers/

@p5pRT
Copy link
Author

p5pRT commented Oct 9, 2018

From @jkeenan

On Sun, 07 Oct 2018 14​:21​:24 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 13​:30​:19 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 12​:11​:36 GMT,
andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with
relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl -I/testing/blead/lib -v
| head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove -I/testing/blead/lib
-b
t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13 cusr
0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I was
able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

The failure in your report
(http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-
24c27b903acc) looks like this​:

#####
# Failed test 'native_to_relaxed_extended_json(json_to_native(rEJ))
= rEJ'
# at t/lib/CorpusTest.pm line 255.
# got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
# expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
# Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional config_args
the
regression appears.

Further investigation indicates that the regression in the BSON test
with respect to perl-5.28.0 becomes manifest when '-Duselongdouble' is
added to the configuration arguments.

I built perl at v5.28.0 and at blead with only 'Duselongdouble' -- no
ithreads or DEBUGGING. I used cpanm in each case to try to install
BSON. The test failure did not appear at v5.28.0, only at blead.

For reference, the .json data in the BSON test suite looks like this​:

#####
"valid"​: [
...
{
"description"​: "positive ms",
"canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
"relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-
24T12​:15​:30.501Z\"}}",
"canonical_extjson"​: "{\"a\" : {\"$date\" : {\"$numberLong\"
:
\"1356351330501\"}}}"
},
#####

Thank you very much.

Incidentally, the failing test was only recently added to the BSON test suite. See​: https://jira.mongodb.org/browse/PERL-1009?focusedCommentId=2028499&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-2028499

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Nov 20, 2018

From @jkeenan

On Tue, 09 Oct 2018 22​:07​:44 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 14​:21​:24 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 13​:30​:19 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 12​:11​:36 GMT,
andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with
relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl -I/testing/blead/lib
-v
| head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove -I/testing/blead/lib
-b
t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13
cusr
0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I was
able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

The failure in your report
(http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-
24c27b903acc) looks like this​:

#####
# Failed test
'native_to_relaxed_extended_json(json_to_native(rEJ))
= rEJ'
# at t/lib/CorpusTest.pm line 255.
# got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
# expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
# Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional config_args
the
regression appears.

Further investigation indicates that the regression in the BSON test
with respect to perl-5.28.0 becomes manifest when '-Duselongdouble'
is
added to the configuration arguments.

I built perl at v5.28.0 and at blead with only 'Duselongdouble' -- no
ithreads or DEBUGGING. I used cpanm in each case to try to install
BSON. The test failure did not appear at v5.28.0, only at blead.

For reference, the .json data in the BSON test suite looks like
this​:

#####
"valid"​: [
...
{
"description"​: "positive ms",
"canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
"relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-
24T12​:15​:30.501Z\"}}",
"canonical_extjson"​: "{\"a\" : {\"$date\" :
{\"$numberLong\"
:
\"1356351330501\"}}}"
},
#####

Thank you very much.

Incidentally, the failing test was only recently added to the BSON
test suite. See​: https://jira.mongodb.org/browse/PERL-
1009?focusedCommentId=2028499&page=com.atlassian.jira.plugin.system.issuetabpanels​:comment-
tabpanel#comment-2028499

It appears that the problem in mongodb has been fixed upstream; see https://jira.mongodb.org/browse/PERL-1009.

Building perl from current blead with longdouble and testing the BSON module PASSes for me.

#####
$ bleadperl -v | head -2 | tail -1
This is perl 5, version 29, subversion 5 (v5.29.5 (v5.29.4-100-gbc0faf5e31)) built for x86_64-linux-ld

$ bleadperl -V​:config_args
config_args='-des -Dusedevel -Duselongdouble -Dprefix=/home/jkeenan/testing/blead -Uversiononly -Dman1dir=none -Dman3dir=none';

$ bleadprove -l t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.15 cusr 0.01 csys = 0.18 CPU)
Result​: PASS
#####

But we'll need a new CPAN release of BSON to resolve this ticket once and for all.

Thank you very much.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Dec 5, 2018

From @jkeenan

On Tue, 20 Nov 2018 19​:16​:27 GMT, jkeenan wrote​:

On Tue, 09 Oct 2018 22​:07​:44 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 14​:21​:24 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 13​:30​:19 GMT, jkeenan wrote​:

On Sun, 07 Oct 2018 12​:11​:36 GMT,
andreas.koenig.7os6VVqR@​franz.ak.mind.de wrote​:

BBC candidate​: https://jira.mongodb.org/browse/PERL-1009

I tested BSON-v1.8.1 with both perl-5.28.0 and blead, each with
relatively simple configuration arguments​:

#####
sh ./Configure -des -Dusedevel
#####

I could not reproduce your result.

At blead​:

#####
[BSON-v1.8.1] 517 $ /testing/blead/bin/perl
-I
/testing/blead/lib
-v
| head -2 | tail -1
This is perl 5, version 29, subversion 4 (v5.29.4 (v5.29.3-42-
g631637d8aa)) built for x86_64-linux

[BSON-v1.8.1] 520 $ /testing/blead/bin/prove
-I
/testing/blead/lib
-b
t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.01 usr 0.00 sys + 0.13
cusr
0.01 csys = 0.15 CPU)
Result​: PASS
#####

It was only by adding additional configuration arguments that I
was
able to reproduce the regression you reported from perl-5.28.0.

#####
-des -Dusedevel -Uuseithreads -Duselongdouble -DEBUGGING=-g
#####

The failure in your report
(http​://www.cpantesters.org/cpan/report/8822a532-c7a3-11e8-82ba-
24c27b903acc) looks like this​:

#####
# Failed test
'native_to_relaxed_extended_json(json_to_native(rEJ))
= rEJ'
# at t/lib/CorpusTest.pm line 255.
# got​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.500Z"}}'
# expected​: '{"a"​:{"$date"​:"2012-12-24T12​:15​:30.501Z"}}'
# Looks like you failed 1 test of 6.

# Failed test 'case​: positive ms'
# at t/corpus/datetime.t line 13.
# Looks like you failed 1 test of 6.
t/corpus/datetime.t ..............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
#####

So we will need to investigate where in the additional
config_args
the
regression appears.

Further investigation indicates that the regression in the BSON
test
with respect to perl-5.28.0 becomes manifest when '-Duselongdouble'
is
added to the configuration arguments.

I built perl at v5.28.0 and at blead with only 'Duselongdouble' --
no
ithreads or DEBUGGING. I used cpanm in each case to try to install
BSON. The test failure did not appear at v5.28.0, only at blead.

For reference, the .json data in the BSON test suite looks like
this​:

#####
"valid"​: [
...
{
"description"​: "positive ms",
"canonical_bson"​: "10000000096100C5D8D6CC3B01000000",
"relaxed_extjson"​: "{\"a\" : {\"$date\" : \"2012-12-
24T12​:15​:30.501Z\"}}",
"canonical_extjson"​: "{\"a\" : {\"$date\" :
{\"$numberLong\"
:
\"1356351330501\"}}}"
},
#####

Thank you very much.

Incidentally, the failing test was only recently added to the BSON
test suite. See​: https://jira.mongodb.org/browse/PERL-
1009?focusedCommentId=2028499&page=com.atlassian.jira.plugin.system.issuetabpanels​:comment-
tabpanel#comment-2028499

It appears that the problem in mongodb has been fixed upstream; see
https://jira.mongodb.org/browse/PERL-1009.

Building perl from current blead with longdouble and testing the BSON
module PASSes for me.

#####
$ bleadperl -v | head -2 | tail -1
This is perl 5, version 29, subversion 5 (v5.29.5 (v5.29.4-100-
gbc0faf5e31)) built for x86_64-linux-ld

$ bleadperl -V​:config_args
config_args='-des -Dusedevel -Duselongdouble
-Dprefix=/home/jkeenan/testing/blead -Uversiononly -Dman1dir=none
-Dman3dir=none';

$ bleadprove -l t/corpus/datetime.t
t/corpus/datetime.t .. ok
All tests successful.
Files=1, Tests=6, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.15 cusr
0.01 csys = 0.18 CPU)
Result​: PASS
#####

But we'll need a new CPAN release of BSON to resolve this ticket once
and for all.

Thank you very much.

BSON has received a new CPAN release, which builds successfully on Perl 5 blead. Resolving ticket.

#####
Building and testing BSON-v1.10.1 ... OK
Successfully installed BSON-v1.10.1
#####

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Dec 5, 2018

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

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

No branches or pull requests

1 participant