Similar to ACCUMULO-2445, but presently the encoder only works on complete byte arrays. This forces an extra copy of the data when it is located in an array that contains other information (e.g. a composite key).
It would be nice to be able to provide offset and length arguments to Encoder.decode so that users can avoid the additional arraycopy.
Changing to a ByteBuffer instead of byte array argument would also be acceptable, but more churn on the API that, unless it's happening globally, I would rather avoid. It would also incur the penalty for that extra Object, which while minimal alone, could be significant if decoding every value in a table, for example.