Skip to content

optimize datastore by using ty.layout.fixed more#4133

Merged
Centril merged 1 commit intomasterfrom
centril/more-fixed
Jan 27, 2026
Merged

optimize datastore by using ty.layout.fixed more#4133
Centril merged 1 commit intomasterfrom
centril/more-fixed

Conversation

@Centril
Copy link
Contributor

@Centril Centril commented Jan 27, 2026

Description of Changes

Exploit (ty: RowTypeLayout).layout.fixed to avoid some work involving var-len stuff:

  • skip required_var_len_granules_for_row for only-fixed-len layouts.
  • skip write_large_blobs for only-fixed-len layouts.
  • add a fast path in has_space_for_row for only-fixed-len layouts.

This resulted in these methods disappearing in flamegraphs.

API and ABI breaking changes

None

Expected complexity level and risk

2, core datastore, but fairly trivial.

Testing

Covered by existing tests.

@Centril Centril enabled auto-merge January 27, 2026 11:15
@Centril Centril added this pull request to the merge queue Jan 27, 2026
Merged via the queue into master with commit 3641816 Jan 27, 2026
30 checks passed
@Centril Centril deleted the centril/more-fixed branch January 27, 2026 12:50
Centril added a commit that referenced this pull request Jan 27, 2026
# Description of Changes

Exploit `(ty: RowTypeLayout).layout.fixed` to avoid some work involving
var-len stuff:
- skip `required_var_len_granules_for_row` for only-fixed-len layouts.
- skip `write_large_blobs` for only-fixed-len layouts.
- add a fast path in `has_space_for_row` for only-fixed-len layouts.

This resulted in these methods disappearing in flamegraphs.

# API and ABI breaking changes

None

# Expected complexity level and risk

2, core datastore, but fairly trivial.

# Testing

Covered by existing tests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants