Feel free to contribute :)
To implement this feature, I think you need to break this feature into following sub tasks.
1. You can extend ColumnPageCodec to implement XOR encoding.
2. Come up with the criteria of how to select this encoding and change behavior of DefaultEncodingStrategy
3. SQL syntax for this encoding.
The encoding override work is still going on. The SQL syntax part is missing, so the point 3 can be done later.
XOR Encoding mainly works on timeseries data as discussed in the paper. We
looked into the classes suggested by you and found out that we will be
having min and max values for our data, firstly we need to identify whether
the data is in time series or not only then XOR encoding can be successful.
So do we need to check for timeseries data prior to performing the encoding.