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

stack commented on HBASE-10201:
-------------------------------

bq. I followed RegionSplitPolicy to write FlushPolicy

I see. Yes you did it seems.

bq. ...Ted Yu suggested using FlushPolicyFactory and placing the factory method 
in it instead of FlushPolicy. 

OK. Its his fault then.

bq. Maybe the code of RegionSplitPolicy is old and need refactoring too...

My comments above apply to it too it seems yes.  The master is checking it can 
load the split policy reaching across into the regionserver package. I suppose 
the idea is checking split policy in one central place.  Should just load 
default on regionserver if we can't find the configured one.

bq. ReflectionUtils.newInstance(clazz, conf) will call setConf. 

ok

bq. Can be fixed later.

ok

Yeah, looks like you followed pattern in code base so not a problem of your 
making. Can fix both in a followup issue.

bq. flushSeqId will not be bumped if we do not flush all stores.

Because?

bq. And actually I do not know where we use FlushMarker so I do not know the 
meaning of flushSeqId in the Marker...

It may not be used just yet but it will be used soon by following read replicas.

> Port 'Make flush decisions per column family' to trunk
> ------------------------------------------------------
>
>                 Key: HBASE-10201
>                 URL: https://issues.apache.org/jira/browse/HBASE-10201
>             Project: HBase
>          Issue Type: Improvement
>          Components: wal
>            Reporter: Ted Yu
>            Assignee: zhangduo
>            Priority: Critical
>             Fix For: 1.0.0, 2.0.0, 0.98.9
>
>         Attachments: 3149-trunk-v1.txt, HBASE-10201-0.98.patch, 
> HBASE-10201-0.98_1.patch, HBASE-10201-0.98_2.patch, HBASE-10201-0.99.patch, 
> HBASE-10201.patch, HBASE-10201_1.patch, HBASE-10201_10.patch, 
> HBASE-10201_11.patch, HBASE-10201_12.patch, HBASE-10201_13.patch, 
> HBASE-10201_13.patch, HBASE-10201_14.patch, HBASE-10201_15.patch, 
> HBASE-10201_16.patch, HBASE-10201_17.patch, HBASE-10201_2.patch, 
> HBASE-10201_3.patch, HBASE-10201_4.patch, HBASE-10201_5.patch, 
> HBASE-10201_6.patch, HBASE-10201_7.patch, HBASE-10201_8.patch, 
> HBASE-10201_9.patch, compactions.png, count.png, io.png, memstore.png
>
>
> Currently the flush decision is made using the aggregate size of all column 
> families. When large and small column families co-exist, this causes many 
> small flushes of the smaller CF. We need to make per-CF flush decisions.



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

Reply via email to