[ 
https://issues.apache.org/jira/browse/HBASE-20828?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16559208#comment-16559208
 ] 

stack commented on HBASE-20828:
-------------------------------

Explain that there are "two dimensions" of exclusivity when we talk about 
Procedure execution ([~Apache9]'s words). There is exclusion around the entity 
that the Procedure is working on -- the Region, etc. -- and for this the 
framework has a locking facility (hasLock, etc.). But then there is also 
nothing in the framework currently to prevent multi-threaded execution of 
steps, possible if one worker thread execution runs into a "suspend". See 
HBASE-20939 for discussion. The case is rare. Ideally the framework would 
ensure single-threaded execution but for now, until we get more experience, see 
the 'trick' in HBASE-20939.

> Finish-up AMv2 Design/List of Tenets/Specification of operation
> ---------------------------------------------------------------
>
>                 Key: HBASE-20828
>                 URL: https://issues.apache.org/jira/browse/HBASE-20828
>             Project: HBase
>          Issue Type: Umbrella
>          Components: amv2
>            Reporter: stack
>            Priority: Major
>
> AMv2 is missing specification. There are too many grey-areas still. Also 
> missing are a concise listing of the tenets of AMv2 operation. Here are some 
> examples:
>  * HBASE-19529 "Handle null states in AM": Asks how we should treat null 
> state in hbase:meta. What does it 'mean'. We seem to treat it differently 
> dependent on context. Needs clarification. [~Apache9] recently asked similar 
> about the meaning of OFFLINE.
>  * Logging needs to have a particular form to help trace Procedure progress; 
> needs a write-up.
> Lets fill in items to address in this umbrella issue. Can address in 
> subissues and produce specification doc too. We have the below but these are 
> mostly (incomplete) description for devs on pv2 and amv2; the specification 
> is missing:
> http://hbase.apache.org/book.html#pv2
> http://hbase.apache.org/book.html#amv2
> (Other areas include addressing what is up w/ rollback -- when, how much, and 
> when it is not appropriate -- as well as recommendation on Procedures 
> coarseness, locking -- is it ok to lock table in alter table procedure for 
> the life of the procedure? -- and so on).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to