Would help if we had some idea how other CPs want to interact with in flight edits. I presume Phoenix isn't the only one who wants to "meddle". Read-only for CPs seems like a big feature shift to me.
On Sun, May 27, 2018, 10:53 Chia-Ping Tsai <[email protected]> wrote: > hi folks, > > I noticed that we make only the WALKey an interface and we leave the TODO > in WALEdit. > > {code} > // TODO: Do not expose this class to Coprocessors. It has set methods. A > CP might meddle. > @InterfaceAudience.LimitedPrivate({ HBaseInterfaceAudience.REPLICATION, > HBaseInterfaceAudience.COPROC }) > public class WALEdit implements HeapSize { > {code} > > WALEdit is used in WALObserver and RegionObserver. It is easy to make the > WALEdit an read-only interface but Phoenix need to add something to WALEdit > in order to come in the consistence guarantee. So how we iron this issue > out? Could we make the WALEdit a read-only interface and encourage phoenix > in casting the WALEdit to the writable WALEdit? > > -- > chia-ping >
