You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Blake Eggleston (JIRA)" <ji...@apache.org> on 2015/12/17 22:46:46 UTC

[jira] [Commented] (CASSANDRA-9428) Implement hints compression

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

Blake Eggleston commented on CASSANDRA-9428:
--------------------------------------------

Here's my initial implementation: https://github.com/bdeggleston/cassandra/commits/9428

A few things to note:
* The behavior of HintsWriter.Session.append has been altered slightly. When the size of a hint is larger than the remaining buffer, the buffer is first flushed to disk, then the hint is written into the newly cleared buffer. Previously, both the hint and the previous data were flushed to disk. I did this to avoid writing very small compressed blocks to disk or having to concatenate the two byte buffers.
* When opening readers, an uncompressed reader is always instantiated first, then upgraded to a compressed reader if the file is compressed. This is because the hints descriptor containing the compressor metadata is written to the head of the file, and it needs to be written uncompressed.

> Implement hints compression
> ---------------------------
>
>                 Key: CASSANDRA-9428
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9428
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Coordination
>            Reporter: Aleksey Yeschenko
>            Assignee: Blake Eggleston
>             Fix For: 3.0.x
>
>
> CASSANDRA-6230 is being implemented with compression in mind, but it's not going to be implemented by the original ticket.
> Adding it on top should be relatively straight-forward, and important, since there are several users in the wild that use compression interface for encryption purposes. DSE is one of them (but isn't the only one). Losing encryption capabilities would be a regression.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)