Skip to content

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
@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.

4 participants