[CXX-2284] Append platform data to handshake Created: 14/Jun/21  Updated: 28/Oct/23  Resolved: 03/Jan/23

Status: Closed
Project: C++ Driver
Component/s: None
Affects Version/s: None
Fix Version/s: 3.8.0

Type: Improvement Priority: Unknown
Reporter: Kevin Albertson Assignee: Kevin Albertson
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by CXX-1306 Require at least C++17 Closed
is depended on by CXX-2350 Evaluate migration to more recent C++... Backlog
Problem/Incident
causes CXX-2754 Add push-pop guards for MONGOCXX_COMP... Closed
Related
Quarter: FY23Q4

 Description   

Motivation Currently, the C++ driver only appends the version and name to the C driver's handshake. It would be useful for analytics and debugging to append additional data. E.g. appending the C++ compiler and C++ standard could give us insight into compiler usage and help us make more informed decisions on when we should add continuous integration tests for new compilers/standards or we can drop support.

Scope
Append a string to the handshake platform. In instance.cpp currently NULL is passed as the platform string. Brainstorm other useful information, but consider adding:

  • The compiler name and version
  • The C++ standard


 Comments   
Comment by Githook User [ 03/Jan/23 ]

Author:

{'name': 'Kevin Albertson', 'email': 'kevin.albertson@mongodb.com', 'username': 'kevinAlbs'}

Message: CXX-2284 Append platform data to handshake (#915)

  • CXX-2284 add compiler ID and version to platform
  • note surprising behavior of mongoc_handshake_data_append
  • add C++ standard to metadata
Comment by Bernie Hackett [ 14/Jun/21 ]

Note that there is a limit to the number of bytes that can appear in the platform string. You'll have to carefully consider what to put in the string for C++ and possibly remove any less valuable information currently passed by the C driver. You could also consider having the C driver prepend platform data from wrapping drivers, rather than adding it after the C driver data.

Generated at Wed Feb 07 22:05:26 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.