Skip to content

perf(table): decode metadata updates in one pass - #1822

Draft
fallintoplace wants to merge 1 commit into
apache:mainfrom
fallintoplace:perf/metadata-update-one-pass
Draft

perf(table): decode metadata updates in one pass#1822
fallintoplace wants to merge 1 commit into
apache:mainfrom
fallintoplace:perf/metadata-update-one-pass

Conversation

@fallintoplace

@fallintoplace fallintoplace commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Reuse one raw field map for update action dispatch and required-field validation.
  • Keep legacy property field normalization working.
  • Avoid repeated JSON object decoding for every update.
  • Add canonical and legacy update benchmarks.

Benchmark

Apple M1 Pro, arm64. 1,000 updates:

Payload Before After Result
Canonical 4.04 ms, 1.71 MB, 36,149 allocs 2.96 ms, 1.39 MB, 26,897 allocs 27% faster, 18% fewer bytes, 26% fewer allocs
Legacy properties 4.19 ms, 1.71 MB, 36,151 allocs 3.36 ms, 1.45 MB, 28,400 allocs 20% faster, 16% fewer bytes, 21% fewer allocs

Tests

  • go test ./...
  • go vet .

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.

1 participant