[SERVER-67064] Investigate further fixes to coverage builders Created: 07/Jun/22  Updated: 27/Oct/23  Resolved: 27/Oct/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Ryan Egesdahl (Inactive) Assignee: [DO NOT ASSIGN] Backlog - Server Development Platform Team (SDP) (Inactive)
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-66134 Code Coverage build variants in Everg... Closed
Assigned Teams:
Server Development Platform
Operating System: ALL
Participants:

 Description   

After SERVER-66134, the problem that was causing coverage data to be completely missing is now fixed, but there are still some other problems which remain:

  1. https://spruce.mongodb.com/task/mongodb_mongo_master_enterprise_rhel_80_64_bit_coverage_experimental_run_unittests_patch_982ba2296ba7e5a9f53e8f36d14310f0f45b7b70_628fc36d61837d5a90033c4e_22_05_26_18_14_26/files?execution=0&sortBy=STATUS&sortDir=ASC doesn't have a "gcov intermediate files - Execution 0" tarball.
  2. https://spruce.mongodb.com/task/mongodb_mongo_master_enterprise_rhel_80_64_bit_coverage_clang_run_unittests_patch_982ba2296ba7e5a9f53e8f36d14310f0f45b7b70_628fc36d61837d5a90033c4e_22_05_26_18_14_26/files?execution=0&sortBy=STATUS&sortDir=ASC has a a "gcov intermediate files - Execution 0" tarball where all of the files within it are empty zero-byte files.
  3. https://spruce.mongodb.com/task/mongodb_mongo_master_enterprise_rhel_80_64_bit_coverage_run_unittests_patch_982ba2296ba7e5a9f53e8f36d14310f0f45b7b70_628fc36d61837d5a90033c4e_22_05_26_18_14_26/files?execution=0&sortBy=STATUS&sortDir=ASC has a "gcov intermediate files - Execution 0" tarball where the filenames are not being mangled correctly. See https://evergreen.mongodb.com/task/mongodb_mongo_v4.4_enterprise_rhel_62_64_bit_coverage_unittests_e4c469e6d6696dc603aff444500fbdbb2ea480be_22_05_25_17_39_45 for comparison. The code coverage integration must not assume the basename of the filenames are unique. The filenames should be the full path from the build/ directory with the / separator replaced with #. For example, build#debug#mongo#util#quick_exit.gcda.gcov instead of quick_exit.dyn.gcda.gcov.
  4. The "Hang Analyzer Output - Execution 0" tarball is too permissive for how it matches files (specifically debugger.dyn.gcda.gcov). We should make it so the "Hang Analyzer Output - Execution 0" tarball only exists in the Files section when the hang analyzer has run.

It's very likely that there are some structural problems with the processor script that are causing these issues, and it may need to be replaced with something more robust.


Generated at Thu Feb 08 06:07:11 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.