fallintoplace opened a new pull request, #1955:
URL: https://github.com/apache/iceberg-go/pull/1955

   ## Summary
   
   - **Lazy metadata builds:** `Transaction.apply` now waits to build immutable 
metadata until a new requirement needs validation.
   - **No-op requirement paths:** Empty requirement lists and duplicate 
requirements skip `MetadataBuilder.Build()` while keeping conflict checks.
   - **Atomic staging:** The existing cloned builder and publish behavior stay 
unchanged.
   
   ## Benchmark
   
   Apple M1 Pro, Go 1.26.3, 10,000 snapshots:
   
   - **No requirements:** about 1.50 MB / 65 allocs to 1.21 MB / 14 allocs
   - **Duplicate requirement:** about 1.50 MB / 70 allocs to 1.21 MB / 19 allocs
   - **New requirement:** about 1.51 MB / 77 allocs before and after
   
   ## Tests
   
   - `go test -timeout=5m` across all packages except `io/gocloud`
   - `go test -race -timeout=5m . ./table/...`
   - `golangci-lint run --timeout=10m`


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to