[SERVER-82618] Replace usages of absl::hash_internal Created: 31/Oct/23 Updated: 28/Nov/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Ivan Fefer | Assignee: | Backlog - Storage Execution Team |
| Resolution: | Unresolved | Votes: | 2 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Assigned Teams: |
Storage Execution
|
||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
In some places where we want a modern hash, we use CityHash. The implementation we use is lifted from absl::hash_internal::CityHash and we use it in several places: https://github.com/search?q=repo%3Amongodb%2Fmongo%20absl%3A%3Ahash_internal&type=code abseil explicitly ask users not to depend on anything with the word internal in it: https://abseil.io/about/compatibility#c-symbols-and-files
This may complicate stuff when we upgrade absl version and CityHash is replaced with some other hash function. If we want to use it, we have several options:
|
| Comments |
| Comment by Chris Hutchinson [ 17/Nov/23 ] |
|
Given there are call sites in key string and lock manager, we are passing this to storage execution |