For the mutable index case, that's all part of the PhoenixIndexCodec. Since
the base table hasn't changed (data doesn't disappear from HBase) we can
actually rebuild what the index row key is and issue a delete for it, and
then add our new index entry from the pending put.

It all goes through the covered index builder.
On Feb 27, 2014 6:36 PM, "Wei Tan" <[email protected]> wrote:

> Hi, I am reading this
> https://github.com/forcedotcom/phoenix/wiki/Secondary-Indexing and trying
> to figure out what is the difference between mutable and immutable index.
> One difference I figure out is that immutable index is client-managed
> while mutable index is cp-managed.
>
> I was expecting that, mutable index coprocessor do three things: 1) put
> new index entry, 2) read base table and get old index value, 3) delete old
> index value if any. I could not find code for 2) and 3). So am I
> understanding it wrong, or I did not find the correct code path?
>
> Thanks,
> Wei
>
> ---------------------------------
> Wei Tan, PhD
> Research Staff Member
> IBM T. J. Watson Research Center
> *http://researcher.ibm.com/person/us-wtan*<http://researcher.ibm.com/person/us-wtan>

Reply via email to