Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Hash for RowRef + make it consistent with Hash for PV #1163

Merged
merged 1 commit into from
Apr 30, 2024

Conversation

Centril
Copy link
Contributor

@Centril Centril commented Apr 26, 2024

Description of Changes

  1. Add Hash for RowRef + make it consistent with Hash for ProductValue.
  2. Make RowRef::row_hash use the above.
  3. Make Table::insert return a RowRef.
  4. Use less unsafe because of 1-3.
  5. Use second-stack to reuse temporary allocations in hashing and serialization.

Fixes #1107.

API and ABI breaking changes

None

Expected complexity level and risk

3, some unsafe involved and we need to ensure consistency in the eq/hash functions.
Some unsafe code is also removed.

Testing

Proptests are added for the new code.

2. Make `RowRef::row_hash` use the above.
3. Make `Table::insert` return a `RowRef`.
4. Use less unsafe because of 1-3.
5. Use `second-stack` to reuse temporary allocations in hashing and serialization.
@Centril Centril force-pushed the centril/row-ref-hash branch from 5ac6720 to 0e8f83c Compare April 26, 2024 08:57
@bfops bfops added the release-any To be landed in any release window label Apr 29, 2024
@Centril Centril added this pull request to the merge queue Apr 30, 2024
Merged via the queue into master with commit fd44242 Apr 30, 2024
7 checks passed
@Centril Centril deleted the centril/row-ref-hash branch April 30, 2024 20:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release-any To be landed in any release window
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants