[
https://issues.apache.org/jira/browse/HBASE-11567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14080421#comment-14080421
]
ryan rawson commented on HBASE-11567:
-------------------------------------
Good generally speaking.
The bulk load tests should really verify more behavior. In the 'successful'
cases, what kind of behavior has changed about the HRegion that we could check?
(if anything - it might not be feasible since HRegion isn't SOLID)
I also could imagine a series of integration tests that verify that the data in
the bulk loaded file is readable. There is also some stress tests that involve
loading during concurrent operations and what should happen in those cases.
That is a separate integration test.
commented on 154f10b
hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java:L2748:
I want to see a space between ){
commented on 154f10b
hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java:L2750:
what's the line length max? Are we on Java7, can we use diamonds now?
commented on 154f10b
hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java:L2751:
spacing here, between the : and the ){
commented on 154f10b
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALEdit.java:L322:
im a little vaugely unhappy how creating all these structures is spread about,
but that is a greater issue, and we cant fix it now.
commented on 154f10b
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java:L3667:
spacing here:
if (log != null) {
commented on 154f10b
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java:L3672
:
so the log doesnt really know how to write business logicy entries, so we have
a utility class that does it. So who is really responsible for doing these
things? The obvious design solution is a wrapper around HLog which allows
pluggable log under it, we should file a new HBase JIRA.
one thing that bothers me about this line is we are hiding a pretty heavy duty
IO event, and its not really apparent, maybe change the name to
HLogUtil.writeBulkLoadMarkerAndSync() so its apparent
commented on 154f10b
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java:L46
:
writes to files = not unit test
commented on 154f10b
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java:L64:
are these constants? if so, final them, upcaps them
commented on 154f10b
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java:L76:
Isn't there already a constant that has this in it somewhere else?
the answer is yes, a package protected one in WALEdit - lets not copy magic
constants about, DRY that up
commented on 154f10b
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java:L121:
hide this (and others like this) behind a static function
commented on 154f10b
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java:L144
:
space
commented on 154f10b
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java:L168:
maybe call this
bulkLogWalEditType -- it might read better when it's being used.
> Write bulk load events to WAL
> -----------------------------
>
> Key: HBASE-11567
> URL: https://issues.apache.org/jira/browse/HBASE-11567
> Project: HBase
> Issue Type: Sub-task
> Reporter: Enis Soztutar
> Assignee: Alex Newman
> Attachments: HBASE-11567-v1.patch
>
>
> Similar to writing flush (HBASE-11511), compaction(HBASE-2231) to WAL and
> region open/close (HBASE-11512) , we should persist bulk load events to WAL.
> This is especially important for secondary region replicas, since we can use
> this information to pick up primary regions' files from secondary replicas.
> A design doc for secondary replica replication can be found at HBASE-11183.
--
This message was sent by Atlassian JIRA
(v6.2#6252)