[SERVER-79669] link fail under UBSAN: missing typeinfo for mongo::ClientCursor Created: 03/Aug/23 Updated: 29/Oct/23 Resolved: 10/Aug/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.1.0-rc0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Billy Donahue | Assignee: | Benety Goh |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Assigned Teams: |
Storage Execution EMEA
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Operating System: | ALL | ||||||||||||
| Sprint: | Execution NAMR Team 2023-08-21 | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 163 | ||||||||||||
| Description |
|
This is a UBSAN build. I think what's going on here is that UBSAN needs more typeinfo than a normal build, in order to check the validity of downcasts, etc. Possible solution: the library that includes shard_role.o need to depend on the library that provides mongo::ClientCursor and its typeinfo structure.
|
| Comments |
| Comment by Githook User [ 09/Aug/23 ] | ||
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: This fixes build compile_dist_test on UBSAN variants. Co-authored-by: Yujin Kang Park <36410031+ykangpark@users.noreply.github.com> | ||
| Comment by Benety Goh [ 08/Aug/23 ] | ||
|
client_cursor.cpp is in the query_exec library. Adding query_exec as a LIBDEPS_PRIVATE dependency to shard_role produces the following cycle:
| ||
| Comment by Billy Donahue [ 03/Aug/23 ] | ||
|
It looks like the ClientCursor usage in shard_role.cpp started last week with jordi.olivares-provencio@mongodb.com does that sound right? |