Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
A New Hash Table (valkey.io)
3 points by avinassh 11 months ago | hide | past | favorite | 2 comments


Literally all three of their required features which were not “standard” for swiss tables were requirements for the go implementation. See https://go.dev/blog/swisstable for a nice post on that project.


Go also had one more requirement:

Many hash table designs, including Abseil’s Swiss Tables, forbid modifying the map during iteration. The Go language spec explicitly allows modifications during iteration, with the following semantics:

- If an entry is deleted before it is reached, it will not be produced.

- If an entry is updated before it is reached, the updated value will be produced.

- If a new entry is added, it may or may not be produced.

which I don't think was needed for valkey




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: