You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@parquet.apache.org by "Ryan Blue (JIRA)" <ji...@apache.org> on 2015/12/22 22:36:46 UTC
[jira] [Created] (PARQUET-414) Binary tests check conditions not
part of the API contract
Ryan Blue created PARQUET-414:
---------------------------------
Summary: Binary tests check conditions not part of the API contract
Key: PARQUET-414
URL: https://issues.apache.org/jira/browse/PARQUET-414
Project: Parquet
Issue Type: Bug
Components: parquet-mr
Affects Versions: 1.8.1
Reporter: Ryan Blue
{{TestBinary#testConstantCopy}} validates that when the backing buffer for a {{Binary}} is changed, the changes can be seen when calling either {{Binary#getBytes}} or {{Binary#getBytesUnsafe}}. This is not a part of the API contract for constant binary. The API guarantees the opposite: that if a reused buffer changes then those changes won't affect the value already returned by {{getBytes}}.
{{ByteBufferBackedBinary}} caches the value returned by {{getBytes}}, which is allowed in the API. This causes tests to fail when it is expected that a change to the underlying buffer changes the value of the binary, when the contract for constant buffers is that the underlying buffer will not be changed.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)