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

   ## What
   Build table location paths with one allocation.
   
   ## Why
   Joining path parts creates a temporary string.
   
   ## Implementation
   - Pre-size a `strings.Builder`.
   - Append each path part directly.
   - Keep slash and literal-path behavior.
   
   ## Benchmark
   Side-by-side comparison of the base and PR path helpers. Go 1.26.3, 
darwin/arm64, Apple M1 Pro, one CPU, 10 runs of 250 ms (median).
   
   | Workload | Before | After | Speedup | B/op | Allocs/op |
   | --- | ---: | ---: | ---: | ---: | ---: |
   | 1 part | 51.09 ns | 53.76 ns | 0.95x (5.2% slower) | 48 → 48 | 1 → 1 |
   | 2 parts | 110.30 ns | 65.01 ns | 1.70x | 112 → 64 | 2 → 1 |
   | 3 parts | 119.65 ns | 71.82 ns | 1.67x | 112 → 64 | 2 → 1 |
   
   These are helper timings, not table-write throughput. The fork base matches 
Apache main at `407a4cdc`.
   


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