[SERVER-59243] icecream 1.1 remotes fail to handle sanitizer black list filepaths properly. Created: 11/Aug/21  Updated: 25/Jul/23  Resolved: 03/Jan/23

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

Type: Bug Priority: Major - P3
Reporter: Daniel Moody Assignee: [DO NOT ASSIGN] Backlog - Server Development Platform Team (SDP) (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Problem/Incident
causes SERVER-64999 Disable, rehabilitate, and re-enable ... Closed
Related
related to SERVER-63211 icecream 1.1 will use wrong objcopy Closed
related to SERVER-62227 Perf annotate tool on Linux doesn't s... Closed
related to SERVER-79310 icecc can't build with --sanitize=und... Closed
Assigned Teams:
Server Development Platform
Backwards Compatibility: Fully Compatible
Operating System: ALL
Participants:

 Description   

It seems that older icecream versions do not handle the paths correctly for src: suppressions inside the blacklist file: https://github.com/icecc/icecream/commit/a2f0d7507c2fb87096c74582d05cdfc05c6e3e40

options include

  • force all icecreams to upgrade to at least 1.3 (not sure if icecream can enforce this or ignore nodes that are not at least a version)
  • use fun: function suppressions to mark third party issues
  • hard fail if user is using icecream and sanitizers

Workaround:
You can build most of the server with ubsan and icecream, the delete the build/$VARIANT/third_party folder and rebuild the same target without icecream.



 Comments   
Comment by Alex Neben [ 03/Jan/23 ]

Minimum icecream has been updated to 1.3 so this has already been fixed.

Comment by Githook User [ 04/Apr/22 ]

Author:

{'name': 'Daniel Moody', 'email': 'daniel.moody@mongodb.com', 'username': 'dmoody256'}

Message: SERVER-64999 added icecc sanitizer build guard rail about SERVER-59243.
Branch: master
https://github.com/mongodb/mongo/commit/0493b83069d0a2597e8be9023afb480efb507c09

Comment by Ryan Egesdahl (Inactive) [ 15/Aug/21 ]

daniel.moody There's no way to tell Icecream to enforce a minimum daemon version via the command line because the only thing that controls it is the minimum protocol version. It looks like we might be able to finagle this by compressing the environment tarball with `xz` and setting `ICECC_ENV_COMPRESSION=xz` when we have `icecc` version >= 1.3. Doing that enables a protocol restriction that effectively does what we want.

Comment by Andrew Morrow (Inactive) [ 12/Aug/21 ]

daniel.gottlieb - Yes, that's correct.

Comment by Daniel Gottlieb (Inactive) [ 12/Aug/21 ]

hard fail if user is using icecream and sanitizers

Am I correct that this isn't a problem with the address sanitzer as our denylist for that has no items?

Generated at Thu Feb 08 05:46:45 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.