Hi, Nice work! I appreciate all your contributions of this issue. and I also want to invite @江天 to join the review. Best,
jianyun cheng <chengjian...@outlook.com> 于2021年10月25日周一 上午10:32写道: > > Hi, all > > > > Thanks for the contribution from Dr. Huang, Xinyu Tan and Sijia Li, the work > of refactor cluster module is ready to review after months work. Especially > thanks to Dr. Huang, who have lead the refactor and made a lot of work before > the others join. Here is the summary of why we do that and what we have done. > > > > The Goal of Refactor > > The main goal of the refactor is make the code structure of cluster module > more clear. Before the refactor, the structure of cluster module is a bit > mess. It is not easy to understand even the one has been familiar with code > of server module. > > > > As the server module is clear enough, and most of developer look into server > when starts joining the project. So we decided to refer the structure of > server module to refactor the cluster module. > > > > What we have done > > 1. Split Thrift RPC service and RPC implementation to make the logic here > clear. For detail, refer the discuss: [Cluster-refactor] About refine classes > name · Issue #3881 · apache/iotdb (github.com) > > 2. Weaken the role of MetaGroupMember. metaGroupMember is just an engine for > serving meta raft group, which should not control the whole server too deep. > Many fields (like coordinator, etc.) are extracted to ClusterIoTDB (renamed > from ClusterMain), and ClusterIoTDB is responsible for creating them. > > 3. Similar with the relationship between StorageEngine and StorageProcessor > in the server module, DataGroupMember can be considered as StorageProcessor, > we created a DataGroupEngine to control them. > > 4. Refactored thrift client class hierarchy to reduce the duplication and > imported Apache commons-pool the help manager thrift client object. > > 5. Write related unit tests for new adding code. For existing code, fixed all > failed unit test cases > > 6. Performance verify. Performance verify is on going, the result will be > updated in the PR description. > > > > > > Although we have done the refactor very carefully, but as we don’t know > everything very well, the unintentional mistakes especially when do code > merge is hard to avoid. Your review and comments is very import for us. > > PR link: [IOTDB-1639] Refactoring the cluster class structure to make it > consistent with the server module by LebronAl · Pull Request #4079 · > apache/iotdb (github.com) > > > > ---------------------------------------------------------- > > Jianyun Cheng > > Thanks!