[
https://issues.apache.org/jira/browse/HBASE-5869?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13264429#comment-13264429
]
[email protected] commented on HBASE-5869:
------------------------------------------------------
bq. On 2012-04-28 22:14:23, Jimmy Xiang wrote:
bq. > src/main/protobuf/ZooKeeper.proto, line 82
bq. > <https://reviews.apache.org/r/4926/diff/1/?file=105372#file105372line82>
bq. >
bq. > A task is a path, this is more like a task state, isn't it?
bq.
bq. Michael Stack wrote:
bq. I can change this np.
bq.
bq. Currently I have the pb class named same as the class that wraps it.
Should I change this? Add a pb prefix or something? Problem w/ that is that
no other of the pb classes have the pb prefix. They are in the generated
package which is probably sufficient to distingush them? My hope is to make it
so the pbs do not leak outside of the class that serializes to them; e.g. this
SplitLogTask class.
bq.
bq. Jimmy Xiang wrote:
bq. I got your point. I prefer to have the pb class named the same as the
wrapper class, if there is one. Should we create a separate task state wrapper
class if needed?
I just tried changing the name of this class from SplitLogTask to
SplitLogTaskState and it don't seem right since you can do a 'getState' call on
this class -- the class has State AND the origin of the task. I'm going to
leave the name as is.
Ok on keeping names the same. It should be fine if we can keep the pb stuff
bottled up under the pb package or internal only to the class that uses the pb
(except where pb comes out on server..)
Thanks Jimmy
bq. On 2012-04-28 22:14:23, Jimmy Xiang wrote:
bq. > src/main/java/org/apache/hadoop/hbase/master/ActiveMasterManager.java,
line 182
bq. > <https://reviews.apache.org/r/4926/diff/1/?file=105357#file105357line182>
bq. >
bq. > Should we abort? Under what scenario the parsing can fail, other
than a conflict data format?
bq.
bq. Michael Stack wrote:
bq. I thought I was just redoing what was there previous. We could abort
but maybe next time through the deserialization works because its been updated
by another? Or, we spew this error all over the logs and drive someone crazy?
Will look at it again.
Yeah, I'll leave this as is after looking at it. Hopefully will be good on
next go around.
- Michael
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/4926/#review7360
-----------------------------------------------------------
On 2012-04-28 18:10:24, Michael Stack wrote:
bq.
bq. -----------------------------------------------------------
bq. This is an automatically generated e-mail. To reply, visit:
bq. https://reviews.apache.org/r/4926/
bq. -----------------------------------------------------------
bq.
bq. (Updated 2012-04-28 18:10:24)
bq.
bq.
bq. Review request for hbase and Jimmy Xiang.
bq.
bq.
bq. Summary
bq. -------
bq.
bq. Convert two zk users to pb: distributed log splitting and regions in
transition.
bq.
bq. Refactored distributed log splitting so we only serialize/deserialize in
one location.
bq. Less changes needed to do same for regions in transition.
bq.
bq. Moves serialization/deserialization out of the ZKAssign, ZKSplit and into
bq. the classes themselves so can encapsulate how serialization is done into
one place
bq. (try to make the ZK* classes just deal in bytes -- about 90% done).
bq.
bq. Moved classes used by various packages up to top level to minimize imports
bq. that are across package (zookeeper into protobuf and/or into regionserver
and/or
bq. master packages, etc).
bq.
bq. A src/main/java/org/apache/hadoop/hbase/DeserializationException.java
bq. New generic deserialization exception.
bq. A src/main/java/org/apache/hadoop/hbase/zookeeper/EmptyWatcher.java
bq. D src/main/java/org/apache/hadoop/hbase/EmptyWatcher.java
bq. Moved under zookeeper package.
bq. A src/main/java/org/apache/hadoop/hbase/HBaseException.java
bq. New base hbase exception as suggested by hbase-5796. New
DeserializationException
bq. inherits from this.
bq. A src/main/java/org/apache/hadoop/hbase/RegionTransition.java
bq. State of a region in transition. Top-level because used by a
bq. few top-level packages. Encapsulates pb serialization/deserialization.
bq. M src/main/java/org/apache/hadoop/hbase/ServerName.java
bq. Add method to deserialize a ServeName, etc. Encapsulates pb'ing.
bq. M src/main/java/org/apache/hadoop/hbase/SplitLogCounters.java
bq. Counters used by distributed log splitting.
bq. A SplitLogTask
bq. Class that encapsulates log splitting state. Also encapsulates pb'ing.
bq. M src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java
bq. Implement code for state. Added functions to go from code to state and
vice
bq. versa. Used serializing.
bq. M src/main/java/org/apache/hadoop/hbase/executor/ExecutorService.java
bq. Remove unused imports.
bq. D src/main/java/org/apache/hadoop/hbase/executor/RegionTransitionData.java
bq. Removed. Replaced by RegionTransition moved to package top-level.
bq. M src/main/java/org/apache/hadoop/hbase/master/ActiveMasterManager.java
bq. M src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
bq. Use new DeserializationException. Move to using new RegionTransition
bq. from RegionTransitionData class. Pass deserialized class rather than
bq. byte array. Remove duplicated code.
bq. M src/main/java/org/apache/hadoop/hbase/master/HMaster.java
bq. Use new ServerName parse method rather than ZKUtil one.
bq. M src/main/java/org/apache/hadoop/hbase/master/SplitLogManager.java
bq. M src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java
bq. Redo to use new SplitLogTask and SplitLogCounter classes.
bq. M src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
bq. expectPBMagicPrefix added
bq. M src/main/java/org/apache/hadoop/hbase/regionserver/SplitTransaction.java
bq. Use new RegionTransition in place of RegionTransitionData.
bq. M src/main/java/org/apache/hadoop/hbase/regionserver/wal/HLogSplitter.java
bq. Define moved from ZKSplitLog to SplitLogManager.
bq. M src/main/java/org/apache/hadoop/hbase/zookeeper/MasterAddressTracker.java
bq. M src/main/java/org/apache/hadoop/hbase/zookeeper/RootRegionTracker.java
bq. Changed method name from getZNodeData to toByteArray to match how we've
bq. named it elsewhere. Use new DeserializationException
bq. M src/main/java/org/apache/hadoop/hbase/zookeeper/ZKAssign.java
bq. Use new RegionTransion class
bq. M src/main/java/org/apache/hadoop/hbase/zookeeper/ZKSplitLog.java
bq. Moved stuff that was in here up into SplitLogManager where better
bq. belongs. Also moved serialization/deserialization up into the
bq. class itself: SplitLogTask. Moved counters out to SplitLogCounter class.
bq. M src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java
bq. Moved deserialization of ServerName out of here and up into ServerName.
bq. M src/main/protobuf/ZooKeeper.proto
bq. Add two new classes, RegionTransition and SplitLogTask.
bq.
bq.
bq. This addresses bug HBASE-5869.
bq. https://issues.apache.org/jira/browse/HBASE-5869
bq.
bq.
bq. Diffs
bq. -----
bq.
bq. src/main/java/org/apache/hadoop/hbase/DeserializationException.java
PRE-CREATION
bq. src/main/java/org/apache/hadoop/hbase/EmptyWatcher.java 9881ec2
bq. src/main/java/org/apache/hadoop/hbase/HBaseException.java PRE-CREATION
bq. src/main/java/org/apache/hadoop/hbase/RegionTransition.java PRE-CREATION
bq. src/main/java/org/apache/hadoop/hbase/ServerName.java 8fdb624
bq. src/main/java/org/apache/hadoop/hbase/SplitLogCounters.java PRE-CREATION
bq. src/main/java/org/apache/hadoop/hbase/SplitLogTask.java PRE-CREATION
bq. src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java 4121508
bq. src/main/java/org/apache/hadoop/hbase/executor/ExecutorService.java
06ca377
bq. src/main/java/org/apache/hadoop/hbase/executor/RegionTransitionData.java
35d7b70
bq. src/main/java/org/apache/hadoop/hbase/master/ActiveMasterManager.java
47e3bd6
bq. src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
f56127d
bq. src/main/java/org/apache/hadoop/hbase/master/HMaster.java 81e9023
bq. src/main/java/org/apache/hadoop/hbase/master/SplitLogManager.java
919c65f
bq. src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java 994cb76
bq.
src/main/java/org/apache/hadoop/hbase/protobuf/generated/ZooKeeperProtos.java
8457bdc
bq. src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java
8ea342f
bq. src/main/java/org/apache/hadoop/hbase/regionserver/SplitTransaction.java
ea12da4
bq. src/main/java/org/apache/hadoop/hbase/regionserver/wal/HLogSplitter.java
587386c
bq. src/main/java/org/apache/hadoop/hbase/zookeeper/EmptyWatcher.java
PRE-CREATION
bq.
src/main/java/org/apache/hadoop/hbase/zookeeper/MasterAddressTracker.java
f9575af
bq. src/main/java/org/apache/hadoop/hbase/zookeeper/RootRegionTracker.java
babde80
bq. src/main/java/org/apache/hadoop/hbase/zookeeper/ZKAssign.java e94b672
bq. src/main/java/org/apache/hadoop/hbase/zookeeper/ZKSplitLog.java 30d7fe9
bq. src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java 46a6fde
bq. src/main/protobuf/ZooKeeper.proto 961ab65
bq. src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java c3a1889
bq. src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java d496d48
bq. src/test/java/org/apache/hadoop/hbase/master/Mocking.java 676d6bb
bq. src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
36046f8
bq.
src/test/java/org/apache/hadoop/hbase/master/TestDistributedLogSplitting.java
2669876
bq. src/test/java/org/apache/hadoop/hbase/master/TestMasterFailover.java
14cdb90
bq. src/test/java/org/apache/hadoop/hbase/master/TestMasterNoCluster.java
f8029ba
bq. src/test/java/org/apache/hadoop/hbase/master/TestSplitLogManager.java
0f7d54e
bq.
src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.java
26b9865
bq.
src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitTransactionOnCluster.java
75b5aea
bq.
src/test/java/org/apache/hadoop/hbase/regionserver/handler/TestCloseRegionHandler.java
07f8fc4
bq.
src/test/java/org/apache/hadoop/hbase/regionserver/handler/TestOpenRegionHandler.java
55a8c4a
bq. src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java 4314572
bq.
bq. Diff: https://reviews.apache.org/r/4926/diff
bq.
bq.
bq. Testing
bq. -------
bq.
bq.
bq. Thanks,
bq.
bq. Michael
bq.
bq.
> Move SplitLogManager splitlog taskstate and AssignmentManager
> RegionTransitionData znode datas to pb
> -----------------------------------------------------------------------------------------------------
>
> Key: HBASE-5869
> URL: https://issues.apache.org/jira/browse/HBASE-5869
> Project: HBase
> Issue Type: Task
> Reporter: stack
> Assignee: stack
> Attachments: firstcut.txt, secondcut.txt, v4.txt, v5.txt, v6.txt
>
>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira