[ 
https://issues.apache.org/jira/browse/HBASE-27073?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17683350#comment-17683350
 ] 

Andrew Kyle Purtell commented on HBASE-27073:
---------------------------------------------

When working on WAL value compression a while back I remember the first version 
used a temporary growable buffer (a ByteArrayOutputStream if I recall 
correctly) to collect all encrypted bytes of the value before submitting the 
payload to the codec. Later in code review Bharath and I went back and forth a 
bit on a trick with input streams to reduce the number of copies. To fix this I 
would go back to the earlier approach. Although there are more copies, only 
when this feature is enabled though, it is straightforward to ensure all bytes 
of the value have arrived before decryption is attempted. Or, perhaps an 
additional pair of eyes can spot the issue and only a minor change is required. 

> TestReplicationValueCompressedWAL.testMultiplePuts is flaky
> -----------------------------------------------------------
>
>                 Key: HBASE-27073
>                 URL: https://issues.apache.org/jira/browse/HBASE-27073
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.5.0
>         Environment: Java version: 1.8.0_322
> OS name: "linux", version: "5.10.0-13-arm64", arch: "aarch64", family: "unix"
>            Reporter: Andrew Kyle Purtell
>            Priority: Minor
>             Fix For: 2.6.0, 3.0.0-alpha-4, 2.5.4
>
>
> org.apache.hadoop.hbase.replication.regionserver.TestReplicationValueCompressedWAL.testMultiplePuts
>   
Run 1: TestReplicationValueCompressedWAL.testMultiplePuts:56 Waited too 
> much time for replication
>   Run 2: PASS



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to