[
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)