[SERVER-77372] resmoke reuses Logkeeper build IDs for different Evergreen tasks Created: 22/May/23  Updated: 29/Oct/23  Resolved: 21/Aug/23

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: None
Fix Version/s: 7.1.0-rc0

Type: Bug Priority: Minor - P4
Reporter: Max Hirschhorn Assignee: Juan Gu
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by SERVER-77371 Parsley displays incorrect patch and ... Closed
Assigned Teams:
Server Development Platform
Backwards Compatibility: Fully Compatible
Operating System: ALL
Participants:

 Description   

The buildnum for a particular builder is incremented by the keyval.inc Evergreen command. The intention here is to ensure each (builder, buildnum) combination is only ever used once.

"get buildnumber": &get_buildnumber
  command: keyval.inc
  params:
    key: "${build_variant}_v7.0"
    destination: "builder_num"

It looks like our branching process updates the branch suffix for the key to restart the counter and avoid contention on the document across branches (see also how keyval.inc is implemented). However the builder in the actual credentials file doesn't include the branch name. This means resmoke is providing Logkeeper with (builder, buildnum) combinations which have already been used before. See EVG-19870 as an example of the misleading behavior this causes in the Evergreen UI.

cat > mci.buildlogger << END_OF_CREDS
slavename='${slave}'
passwd='${passwd}'
builder='MCI_${build_variant}'
build_num=${builder_num}
build_phase='${task_name}_${execution}'
END_OF_CREDS

The change should be to align the 'key' for the keyval.inc command and the builder in the generated mci.buildlogger credentials file. Hopefully we can do this in such a way which doesn't introduce yet more places which need to be updated each time a new mongodb/mongo branch is released.



 Comments   
Comment by Githook User [ 17/Aug/23 ]

Author:

{'name': 'Juan Gu', 'email': 'juan.gu@mongodb.com', 'username': 'juangugit'}

Message: SERVER-77372 resmoke reuses Logkeeper build IDs for Evergreen tasks
Branch: master
https://github.com/mongodb/mongo/commit/86c5c0e3761424b47551f1a4288bf7555a75d8c5

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