You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Christopher Tubbs (JIRA)" <ji...@apache.org> on 2014/09/23 20:35:36 UTC

[jira] [Created] (ACCUMULO-3163) Mutation could (maybe) benefit from additional validity checks

Christopher Tubbs created ACCUMULO-3163:
-------------------------------------------

             Summary: Mutation could (maybe) benefit from additional validity checks
                 Key: ACCUMULO-3163
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3163
             Project: Accumulo
          Issue Type: Improvement
         Environment: Accumulo 1.4
            Reporter: Christopher Tubbs


In a 1.4 instance, a mutation was apparently corrupted when it was received by the tserver. It then got written to the WAL in a corrupted form, and the tserver (likely, as far as can be discerned) failed to deserialize the data to insert it into the in-memory tree. At some point this tablet went offline, and failed to be assigned, because WAL recovery could not complete (specifically, an ArrayIndexOutOfBoundsException, because the length of a column qualifier was much larger than it should have been, and much larger than the array).

To protect against corrupt data entering the WAL, the client could provide a fast checksum on the array, to validate its contents before writing to the WAL.

The lengths of the fields could be checked for sanity when deserializing, and throw a more informative error than index out of bounds.



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