hbase/hbase-common
Andrew Purtell 97f90e0be2
HBASE-25994 Active WAL tailing fails when WAL value compression is enabled (#3377)
Depending on which compression codec is used, a short read of the
compressed bytes can cause catastrophic errors that confuse the WAL reader.
This problem can manifest when the reader is actively tailing the WAL for
replication. To avoid these issues when WAL value compression is enabled,
BoundedDelegatingInputStream should assume enough bytes are available to
supply a reader up to its bound. This behavior is valid per the contract
of available(), which provides an _estimate_ of available bytes, and
equivalent to IOUtils.readFully but without requiring an intermediate
buffer.

Added TestReplicationCompressedWAL and TestReplicationValueCompressedWAL.
Without the WALCellCodec change TestReplicationValueCompressedWAL will
fail.

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2021-06-14 17:16:31 -07:00
..
src HBASE-25994 Active WAL tailing fails when WAL value compression is enabled (#3377) 2021-06-14 17:16:31 -07:00
pom.xml HBASE-25591 Upgrade opentelemetry to 0.17.1 (#2971) 2021-04-25 09:23:23 +08:00