Uh oh!
There was an error while loading. Please reload this page.
ARROW-786: [Format] In-memory format for 128-bit Decimals, handling of sign bit - #981
ARROW-786: [Format] In-memory format for 128-bit Decimals, handling of sign bit#981cpcloud wants to merge 22 commits into
Conversation
wesm
commented
Aug 20, 2017
nice! I will review when I can |
wesm
commented
Aug 21, 2017
If you rebase on master and then fix bugs, you should be able to get to a passing build |
There was a problem hiding this comment.
It's set to 0 as the default in the constructor already.
There was a problem hiding this comment.
Any way to share code with FixedSizeBinaryArray on this?
There was a problem hiding this comment.
Possibly. Let me look into cleaning up DecimalArray even more.
There was a problem hiding this comment.
I was able to do a pretty significant refactoring of DecimalArray and inherit most methods from FixedSizeBinaryArray, including reuse of existing comparison methods for both FixedSizeBinaryArray and DecimalArray.
There was a problem hiding this comment.
Can you use /// style comments for doxygen instead of C-style?
Here's my "Arrow preflight check" that helps with not checking in cpplint or flake8 fails functionarrow_preflight {
ARROW_PREFLIGHT_DIR=$HOME/code/arrow/cpp/preflight
mkdir -p $ARROW_PREFLIGHT_DIRpushd$ARROW_PREFLIGHT_DIR
arrow_cmake
ninja format
ninja lint
popdpushd$HOME/code/arrow/python
flake8 pyarrow
flake8 --config=.flake8.cython pyarrow
popd
} |
wesm
left a comment
There was a problem hiding this comment.
+1, thanks for all this! onward to the integration tests
| private: | ||
| void SetData(const std::shared_ptr<internal::ArrayData>& data); | ||
| const uint8_t* raw_values_; | ||
| const uint8_t* sign_bitmap_data_; |
representation, adapted from the Apache ORC project's C++ in memory format.
This enables us to write integration tests and results in an in-memory
Decimal128 format that is compatible with the Java implementation
regression tests
read/write support for decimals) and ARROW-1238 (Java Decimal integration
tests).