You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Gilles Sadowski <gi...@gmail.com> on 2022/06/26 20:12:58 UTC

[Math][Numbers] Regression (due to a change in "BigFraction" class?)

Hello.

Jenkins (as well as local build of [Math]) is failing:
  https://ci-builds.apache.org/job/Commons/job/commons-math/336/

Two regressions appeared in unit tests untouched for ages:
  org.apache.commons.math4.legacy.analysis.polynomials.PolynomialsUtilsTest
  org.apache.commons.math4.legacy.ode.nonstiff.AdamsNordsieckTransformerTest

The impacted classes
  org.apache.commons.math4.legacy.analysis.polynomials.PolynomialsUtils
  org.apache.commons.math4.legacy.ode.nonstiff
both depend on class "BigFraction" from [Numbers] that has been modified
in commit 1497df18dfb77f454450d71733c31a47560c6845.
There, parentheses have been removed in logical tests.
Could this seemingly innocuous change be causing this issue?
If so, there is a probably unwanted side-effect (either in [Numbers] or in
[Math]).

Regards,
Gilles

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Re: [Math][Numbers] Regression (due to a change in "BigFraction" class?)

Posted by sebb <se...@gmail.com>.
On Mon, 27 Jun 2022 at 13:40, Gilles Sadowski <gi...@gmail.com> wrote:
>
> Hello.
>
> Le lun. 27 juin 2022 à 01:18, Alex Herbert <al...@gmail.com> a écrit :
> >
> > On Sun, 26 Jun 2022 at 21:27, Gilles Sadowski <gi...@gmail.com> wrote:
> >
> > >
> > >
> > > >
> > > > Strangely I am not receiving emails from GH actions (or jenkins) to
> > > inform
> > > > me that the build fails after a commit. There may be a setting for the GH
> > > > actions that is missing to enable e-mail to the committer after a build
> > > > failure.
> > >
> > > I also did not see the failure until trying a local build of [Math].
> > > Isn't it related to the fact that such test failures entail that the build
> > > is tagged as "unstable" rather than "failed"?
> > >
> >
> > For GH actions I think we can add this to the .asf.yaml [1,2]:
> >
> > notifications:
> >   jobs:   dev@commons.apache.org
> >
> > I am not sure if we should try this with dev@ or use another e-mail list.
>
> There is a "notifications@commons.apache.org" ML.
>
> >
> > For Jenkins the post build editable e-mail notification section had
> > 'Disable Extended Email Publisher' selected. I have unchecked this box (as
> > per the RNG config); we will wait to see if it now sends emails on a build
> > error. Note that statistics and math also have this setting unchecked.
> > Geometry has the setting checked (perhaps it should be updated).
> >
> > However this may not be the setting to fix this since it was not checked in
> > the math config and math had a recent build failure after it was triggered
> > by a change in numbers. The email is targeted at the developer who created
> > the commit. So the math build failure should have been sent to me since I
> > have the most recent commit on master. But I received no email. The math
> > build is logged as a failed build but the log output shows that maven still
> > completes remaining modules and uploads the SNAPSHOT artifacts.
> >
> > Also note that the Jenkins build for numbers continues to deploy all
> > modules after a module has failed tests (see [3] for the failed build after
> > the offending commit). So there is something in the Jenkins setup that is
> > ignoring test failures and continuing with the build to deploy artifacts
> > from all the modules.
>
> I also vaguely noticed it.
> It's not the first time that Jenkins changes behaviour without
> any action on our part (and no notice from INFRA that this
> could happen)...

This is more likely be due to a change in Maven rather than Jenkins itself.

Though the recent replacement of the Jenkins host might have resulted
in an updated Maven version.

> Regards,
> Gilles
>
> >
> > Alex
> >
> > [1]
> > https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features#Git.asf.yamlfeatures-GitHubActionsbuildstatusemails
> > [2]
> > https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features#Git.asf.yamlfeatures-Notificationsettingsforrepositories
> > [3] https://ci-builds.apache.org/job/Commons/job/commons-numbers/150/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Re: [Math][Numbers] Regression (due to a change in "BigFraction" class?)

Posted by Alex Herbert <al...@gmail.com>.
On Mon, 27 Jun 2022 at 13:40, Gilles Sadowski <gi...@gmail.com> wrote:

>
> >
> > For GH actions I think we can add this to the .asf.yaml [1,2]:
> >
> > notifications:
> >   jobs:   dev@commons.apache.org
> >
> > I am not sure if we should try this with dev@ or use another e-mail
> list.
>
> There is a "notifications@commons.apache.org" ML.
>

OK. I will set it up as a trial on numbers and see what the mail frequency
is like. I do not see a way to configure it to only e-mail on build
failures. So it may end up emailing after all CI jobs.

Alex

Re: [Math][Numbers] Regression (due to a change in "BigFraction" class?)

Posted by Gilles Sadowski <gi...@gmail.com>.
Hello.

Le lun. 27 juin 2022 à 01:18, Alex Herbert <al...@gmail.com> a écrit :
>
> On Sun, 26 Jun 2022 at 21:27, Gilles Sadowski <gi...@gmail.com> wrote:
>
> >
> >
> > >
> > > Strangely I am not receiving emails from GH actions (or jenkins) to
> > inform
> > > me that the build fails after a commit. There may be a setting for the GH
> > > actions that is missing to enable e-mail to the committer after a build
> > > failure.
> >
> > I also did not see the failure until trying a local build of [Math].
> > Isn't it related to the fact that such test failures entail that the build
> > is tagged as "unstable" rather than "failed"?
> >
>
> For GH actions I think we can add this to the .asf.yaml [1,2]:
>
> notifications:
>   jobs:   dev@commons.apache.org
>
> I am not sure if we should try this with dev@ or use another e-mail list.

There is a "notifications@commons.apache.org" ML.

>
> For Jenkins the post build editable e-mail notification section had
> 'Disable Extended Email Publisher' selected. I have unchecked this box (as
> per the RNG config); we will wait to see if it now sends emails on a build
> error. Note that statistics and math also have this setting unchecked.
> Geometry has the setting checked (perhaps it should be updated).
>
> However this may not be the setting to fix this since it was not checked in
> the math config and math had a recent build failure after it was triggered
> by a change in numbers. The email is targeted at the developer who created
> the commit. So the math build failure should have been sent to me since I
> have the most recent commit on master. But I received no email. The math
> build is logged as a failed build but the log output shows that maven still
> completes remaining modules and uploads the SNAPSHOT artifacts.
>
> Also note that the Jenkins build for numbers continues to deploy all
> modules after a module has failed tests (see [3] for the failed build after
> the offending commit). So there is something in the Jenkins setup that is
> ignoring test failures and continuing with the build to deploy artifacts
> from all the modules.

I also vaguely noticed it.
It's not the first time that Jenkins changes behaviour without
any action on our part (and no notice from INFRA that this
could happen)...

Regards,
Gilles

>
> Alex
>
> [1]
> https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features#Git.asf.yamlfeatures-GitHubActionsbuildstatusemails
> [2]
> https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features#Git.asf.yamlfeatures-Notificationsettingsforrepositories
> [3] https://ci-builds.apache.org/job/Commons/job/commons-numbers/150/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Re: [Math][Numbers] Regression (due to a change in "BigFraction" class?)

Posted by Alex Herbert <al...@gmail.com>.
On Sun, 26 Jun 2022 at 21:27, Gilles Sadowski <gi...@gmail.com> wrote:

>
>
> >
> > Strangely I am not receiving emails from GH actions (or jenkins) to
> inform
> > me that the build fails after a commit. There may be a setting for the GH
> > actions that is missing to enable e-mail to the committer after a build
> > failure.
>
> I also did not see the failure until trying a local build of [Math].
> Isn't it related to the fact that such test failures entail that the build
> is tagged as "unstable" rather than "failed"?
>

For GH actions I think we can add this to the .asf.yaml [1,2]:

notifications:
  jobs:   dev@commons.apache.org

I am not sure if we should try this with dev@ or use another e-mail list.


For Jenkins the post build editable e-mail notification section had
'Disable Extended Email Publisher' selected. I have unchecked this box (as
per the RNG config); we will wait to see if it now sends emails on a build
error. Note that statistics and math also have this setting unchecked.
Geometry has the setting checked (perhaps it should be updated).

However this may not be the setting to fix this since it was not checked in
the math config and math had a recent build failure after it was triggered
by a change in numbers. The email is targeted at the developer who created
the commit. So the math build failure should have been sent to me since I
have the most recent commit on master. But I received no email. The math
build is logged as a failed build but the log output shows that maven still
completes remaining modules and uploads the SNAPSHOT artifacts.

Also note that the Jenkins build for numbers continues to deploy all
modules after a module has failed tests (see [3] for the failed build after
the offending commit). So there is something in the Jenkins setup that is
ignoring test failures and continuing with the build to deploy artifacts
from all the modules.

Alex

[1]
https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features#Git.asf.yamlfeatures-GitHubActionsbuildstatusemails
[2]
https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features#Git.asf.yamlfeatures-Notificationsettingsforrepositories
[3] https://ci-builds.apache.org/job/Commons/job/commons-numbers/150/

Re: [Math][Numbers] Regression (due to a change in "BigFraction" class?)

Posted by Gilles Sadowski <gi...@gmail.com>.
Hello.

Le dim. 26 juin 2022 à 22:17, Alex Herbert <al...@gmail.com> a écrit :
>
> On Sun, 26 Jun 2022 at 21:12, Gilles Sadowski <gi...@gmail.com> wrote:
>
> > Hello.
> >
> > Jenkins (as well as local build of [Math]) is failing:
> >   https://ci-builds.apache.org/job/Commons/job/commons-math/336/
> >
> > Two regressions appeared in unit tests untouched for ages:
> >   org.apache.commons.math4.legacy.analysis.polynomials.PolynomialsUtilsTest
> >
> > org.apache.commons.math4.legacy.ode.nonstiff.AdamsNordsieckTransformerTest
> >
> > The impacted classes
> >   org.apache.commons.math4.legacy.analysis.polynomials.PolynomialsUtils
> >   org.apache.commons.math4.legacy.ode.nonstiff
> > both depend on class "BigFraction" from [Numbers] that has been modified
> > in commit 1497df18dfb77f454450d71733c31a47560c6845.
> > There, parentheses have been removed in logical tests.
> > Could this seemingly innocuous change be causing this issue?
> >
>
> Yes. It is a rounding error I introduced when erasing the wrong set of
> parentheses. I have corrected the error. Sorry for the mistake.

Once in a (long) while. ;-)
It's great to see that the test suites are working!

>
> Strangely I am not receiving emails from GH actions (or jenkins) to inform
> me that the build fails after a commit. There may be a setting for the GH
> actions that is missing to enable e-mail to the committer after a build
> failure.

I also did not see the failure until trying a local build of [Math].
Isn't it related to the fact that such test failures entail that the build
is tagged as "unstable" rather than "failed"?

Regards,
Gilles

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Re: [Math][Numbers] Regression (due to a change in "BigFraction" class?)

Posted by Alex Herbert <al...@gmail.com>.
On Sun, 26 Jun 2022 at 21:12, Gilles Sadowski <gi...@gmail.com> wrote:

> Hello.
>
> Jenkins (as well as local build of [Math]) is failing:
>   https://ci-builds.apache.org/job/Commons/job/commons-math/336/
>
> Two regressions appeared in unit tests untouched for ages:
>   org.apache.commons.math4.legacy.analysis.polynomials.PolynomialsUtilsTest
>
> org.apache.commons.math4.legacy.ode.nonstiff.AdamsNordsieckTransformerTest
>
> The impacted classes
>   org.apache.commons.math4.legacy.analysis.polynomials.PolynomialsUtils
>   org.apache.commons.math4.legacy.ode.nonstiff
> both depend on class "BigFraction" from [Numbers] that has been modified
> in commit 1497df18dfb77f454450d71733c31a47560c6845.
> There, parentheses have been removed in logical tests.
> Could this seemingly innocuous change be causing this issue?
>

Yes. It is a rounding error I introduced when erasing the wrong set of
parentheses. I have corrected the error. Sorry for the mistake.

Strangely I am not receiving emails from GH actions (or jenkins) to inform
me that the build fails after a commit. There may be a setting for the GH
actions that is missing to enable e-mail to the committer after a build
failure.

Alex