Opened 14 months ago

Closed 11 months ago

Last modified 11 months ago

#2302 closed Bug (fixed)

SETTE fails to complete the AGRIF_DEMO test if ADD_NOSIGNEDZERO has been set to "no"

Reported by: smueller Owned by: smueller
Priority: low Milestone:
Component: CI Version: trunk
Severity: minor Keywords: SETTE
Cc:

Description

Context

The configuration AGRIF_DEMO_NOAGRIF_ST, which is set up as part of the SETTE test of the AGRIF_DEMO reference configuration, fails to run in a SETTE configuration where the value of ADD_NOSIGNEDZERO has been set to "no" since the initial setup of configuration AGRIF_DEMO_NOAGRIF_ST. This failure is not explicitly flagged up in the SETTE report, but it leads to the omission of the report from the comparison of output from matching runs compiled with and without key_agrif.

Analysis

If variable ADD_KEY is an empty string or contains solely whitespace characters when makenemo is executed in scripts source:/utils/CI/sette/sette_reference-configurations.sh@11161 and source:/utils/CI/sette/sette_test-cases.sh@11161, makenemo interprets del_key as the value for the preceding add_key keyword argument instead of as an instruction to disable the specified preprocessor keys. When ADD_NOSIGNEDZERO has been set to "no", ADD_KEY remains empty, and therefore keyword argument del_key does not have the intended effect; in the case of configuration AGRIF_DEMO_NOAGRIF_ST this leads to the failure to remove key_agrif from the list of active preprocessor keys.

Fix

The incorrect instructions for preprocessor-key management by makenemo described above could be avoided in scripts source:/utils/CI/sette/sette_reference-configurations.sh and source:/utils/CI/sette/sette_test-cases.sh by suppressing the add_key keyword if variable ADD_KEY does not contain any preprocessor keys. Further, the reporting of incomplete comparisons of output from runs with the AGIRF_DEMO_ST and AGRIF_DEMO_NOAGRIF_ST model configurations by source:/utils/CI/sette/sette_rpt.sh@11161 should be improved.

Commit History (8)

ChangesetAuthorTimeChangeLog
11498smueller2019-09-04T12:18:55+02:00

Removal of branch fix_ticket2302_sette (ticket #2302)

11497smueller2019-09-04T12:14:12+02:00

Merge of branch fix_ticket2302_sette into main SETTE version (ticket #2302)

11493smueller2019-09-02T20:03:21+02:00

Revision of the method for determining the test revision in the identictest test to bring it in line with the method used in other tests (ticket #2302)

11492smueller2019-09-02T19:39:43+02:00

Ensuring of output from the identictest test for all variants of incomplete tests (ticket #2302)

11491smueller2019-09-02T19:10:53+02:00

Reverting of [11490] (ticket #2302)

11490smueller2019-09-02T18:59:38+02:00

Ensuring of output from the test for all variants of incomplete tests (ticket #2302)

11211smueller2019-07-03T18:38:14+02:00

Quoting of preprocessor key lists in makenemo arguments to avoid incorrect preprocessor key management (ticket #2302)

11208smueller2019-07-02T23:55:12+02:00

Branching of SETTE for fixing the bug described in ticket #2302

Change History (12)

comment:1 Changed 14 months ago by smasson

key_nosignedzero is in fact related to the compilateur you use and not to the configuration you are compiling.
That's why I moved the activation of this key from the cpp_*.fcm files to the arch-*.fcm files. See the examples of arch-linux_gfortran.fcm or arch-osx_gfortran.fcm

comment:2 Changed 14 months ago by smueller

  • Owner changed from systeam to smueller
  • Status changed from new to assigned

comment:3 Changed 13 months ago by smueller

In 11208:

Branching of SETTE for fixing the bug described in ticket #2302

comment:4 Changed 13 months ago by smueller

The quoting of ${ADD_KEYS} (i.e., the use of "${ADD_KEYS}") in the arguments of the makenemo commands in source:/utils/CI/sette/sette_reference-configurations.sh and source:/utils/CI/sette/sette_test-cases.sh would ensure that the add_key keyword is always followed by an appropriate value, even if the ADD_KEYS variable is empty. Such quoting of ${ADD_KEYS} would fix the bug described above. Further, the quoting of the add_key and del_key argument values of the makenemo commands in source:/utils/CI/sette/sette_reference-configurations.sh and source:/utils/CI/sette/sette_test-cases.sh would permit the addition or removal of multiple keys.

comment:5 Changed 13 months ago by smueller

In 11211:

Quoting of preprocessor key lists in makenemo arguments to avoid incorrect preprocessor key management (ticket #2302)

comment:6 Changed 11 months ago by smueller

Function identictest of source:/utils/CI/sette/sette_rpt.sh@11161, which is used to carry out a comparison between results from AGRIF_DEMO_NOAGRIF_ST and AGRIF_DEMO_ST runs, does not report any outcome (such as for example "incomplete test") if one but not both of the two compared runs have failed; the reporting of the comparison should be made comprehensive and the identictest function could be simplified.

Further, the current version of function identictest does compare the most recent runs for the specified configurations (it appears to use as revision-selecting mechanism that widely used by source:/utils/CI/sette/sette_rpt.sh prior to revision [11161] and currently available using the old keyword) and does not employ the mechanism for determining the test revision used by other tests (function get_dorv); for consistency with the other tests, identictest could be modified to make use of function get_dorv in order to determine the test revision.

comment:7 Changed 11 months ago by smueller

In 11490:

Ensuring of output from the test for all variants of incomplete tests (ticket #2302)

comment:8 Changed 11 months ago by smueller

In 11491:

Reverting of [11490] (ticket #2302)

comment:9 Changed 11 months ago by smueller

In 11492:

Ensuring of output from the identictest test for all variants of incomplete tests (ticket #2302)

comment:10 Changed 11 months ago by smueller

In 11493:

Revision of the method for determining the test revision in the identictest test to bring it in line with the method used in other tests (ticket #2302)

comment:11 Changed 11 months ago by smueller

  • Resolution set to fixed
  • Status changed from assigned to closed

In 11497:

Merge of branch fix_ticket2302_sette into main SETTE version (ticket #2302)

comment:12 Changed 11 months ago by smueller

In 11498:

Removal of branch fix_ticket2302_sette (ticket #2302)

Note: See TracTickets for help on using tickets.