Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-83522

absl::hash doesn't guarantee hashing values of different C++ types the same but we rely on that in SBE

    • Type: Icon: Bug Bug
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • ALL

      Absail's hash.h states that the hash might depend on the C++ type and gives as an example that int and double might not hash the same. patrick.freed@mongodb.com has found that in the latest abseil equal values of int32 and int64 types might produce different hashes.

      Note: in value::hashValue we already hash as int64_t doubles and decimals that can be represented as int64_t (and presumably those that cannot be represented as such won't compare equal to any int64_t values).

            Assignee:
            backlog-query-execution [DO NOT USE] Backlog - Query Execution
            Reporter:
            irina.yatsenko@mongodb.com Irina Yatsenko (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: