[SERVER-33193] Enable test failure archive for specific tasks and hooks Created: 08/Feb/18  Updated: 29/Oct/23  Resolved: 12/Feb/18

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: None
Fix Version/s: 3.4.16, 3.6.6, 3.7.2

Type: Task Priority: Major - P3
Reporter: Jonathan Abrahams Assignee: Jonathan Abrahams
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
depends on SERVER-26884 Support archiving data files in Everg... Closed
Related
related to SERVER-33512 Add PeriodicKillSecondaries hook to a... Closed
Backwards Compatibility: Fully Compatible
Backport Requested:
v3.6, v3.4
Sprint: TIG 2018-02-26
Participants:

 Description   

The capability to archive data files for a test failure (SERVER-26884) needs to be enabled for a specific sets of tasks, hooks and tests. The suite configuration file will require a new section under executor to permit this:

executor:
  archive:
    on_success: false
    hooks:
      - ValidateCollections
    tests:
      - jstests/core/**/o*.js
...



 Comments   
Comment by Githook User [ 24/May/18 ]

Author:

{'username': 'hptabster', 'name': 'Jonathan Abrahams', 'email': 'jonathan@mongodb.com'}

Message: SERVER-33193 Enable test failure archive for specific tasks and hooks
Branch: v3.6
https://github.com/mongodb/mongo/commit/e296a23cf8f319badf0f856fb316b5da74a9d30a

Comment by Githook User [ 24/May/18 ]

Author:

{'username': 'hptabster', 'name': 'Jonathan Abrahams', 'email': 'jonathan@mongodb.com'}

Message: SERVER-33193 Enable test failure archive for specific tasks and hooks
Branch: v3.4
https://github.com/mongodb/mongo/commit/0bf4879628373dd75b67505862b05d5f5dc61465

Comment by Githook User [ 12/Feb/18 ]

Author:

{'email': 'jonathan@mongodb.com', 'name': 'Jonathan Abrahams', 'username': 'hptabster'}

Message: SERVER-33193 Enable test failure archive for specific tasks and hooks

Comment by Max Hirschhorn [ 09/Feb/18 ]

Per our in-person discussion, since the author of a resmoke.py YAML suite configuration still needs to explicitly specify the list of hooks it isn't much additional overhead to also need to explicitly specify a list of hooks in the "archive" section. There therefore isn't as much gained from having the default automatically be the data consistency ones without writing it in the YAML file.

Comment by Max Hirschhorn [ 09/Feb/18 ]

Per the original requirements of this feature, archive was made to be opt-in. Are you requesting for a list of specific hooks to be always archived on failure and use an opt-out mechanism to turn that off? Or are you requesting that all relevant resmoke.py YAML suite configuration files me updated to enable these specific hooks for archive?

There's a number of resmoke.py YAML suite configurations at this point that I wasn't sure it was worth manually updating all of them to say hooks: true. I think we should at least consider flipping the default to be opt-out for the data consistency checks so we don't accidentally not turn it on.

Comment by Jonathan Abrahams [ 09/Feb/18 ]

We should enable archiving data files for all of our data consistency hooks. It would be interesting to have this be the default behavior and have authors of resmoke.py YAML suites explicitly opt-out if they didn't want that behavior.

max.hirschhorn Per the original requirements of this feature, archive was made to be opt-in. Are you requesting for a list of specific hooks to be always archived on failure and use an opt-out mechanism to turn that off? Or are you requesting that all relevant resmoke.py YAML suite configuration files be updated to enable these specific hooks for archive?

Comment by Max Hirschhorn [ 09/Feb/18 ]

We should enable archiving data files for all of our data consistency hooks. It would be interesting to have this be the default behavior and have authors of resmoke.py YAML suites explicitly opt-out if they didn't want that behavior.

The jstests/noPassthrough/wt_unclean_shutdown.js and jstests/noPassthrough/backup_restore.js tests were the original motivation for SERVER-26884. The latter has since been split into backup_restore_fsync_lock.js, backup_restore_rolling.js, and backup_restore_stop_start.js. We should solicit feedback from the Storage and Replication teams as to what other tests and/or test suites for which it would be appropriate to gather data files upon failure.

Generated at Thu Feb 08 04:32:37 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.