apache / apache/accumulo-fluo

Represent column type as Java enum and provide utility methods for conversion

Open
#178 1 comment 0 reactions 0 assignees View on GitHub
improvement
Dominant language
Java
Stars
200
Forks
73
PR merge metrics
No merged PRs in 30d

Description

Fluo has several column types (DATA, ACK, LOCK, WRITE, DEL_LOCK, etc). These column types are stored in 3 bits of the timestamp and retrieved using a mask. Columns types are passed around as `long` and compared to constants (see ColumnConstants class). When a user wants to write a column they need to embed the column type into the timestamp.

While the design above works well and should remain, it would be nice to represent column types as a Java enum type in most Fluo code. Utility methods for embedding and retrieving the column type from a timestamp could be created. These methods could also have error checking. Fluo classes (like Flutation) that write to Accumulo tables could accept ColumnType as a parameter to their methods and perform the embedding of column type into the timestamp for the user using the available utility methods.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.