New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: introduce tuple abstraction #954
Conversation
This replaces the use of byte[][] in a number of places with a Tuple class that wraps it. This is a necessary change to support doing anything other than blindly reading incoming data into a heap- allocated byte array.
Codecov Report
@@ Coverage Diff @@
## master #954 +/- ##
===========================================
+ Coverage 65.9% 66.8% +0.89%
- Complexity 3558 3717 +159
===========================================
Files 166 167 +1
Lines 15223 15994 +771
Branches 2458 2712 +254
===========================================
+ Hits 10033 10685 +652
- Misses 4023 4096 +73
- Partials 1167 1213 +46 |
@tomdcc , have you measured the overhead of |
@@ -0,0 +1,63 @@ | |||
/* | |||
* Copyright (c) 2008, PostgreSQL Global Development Group |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
date should probably be 2017 for a new file
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Whoops! Fixed
I think the abstraction is worthwhile even if it imposes a performance penalty. The question is at which point is it not worthwhile. So some benchmarking will be necessary |
Waiting for the performance tests |
Ran the suggested benchmarks: Numbers are very close, slightly more have |
@vlsi ping |
Is there any reason not to commit this ? |
Let's see how it goes. |
Resolved the conflicts in #1701 |
Merged, please close |
rebased with PR 1701 |
This replaces the use of byte[][] in a number of places with a Tuple class that wraps it. This is a necessary change to support doing anything other than blindly reading incoming data into a heap-allocated byte array.
The intended use-case is the flip side of #953. The actual functionality will follow in a subsequent PR if there's support for the refactor and feature.