Hi Yingchun, Tao and all Pegasus developers, Firstly I agree that all source code directories are moved from "src/rdsn/src/" to "src/", since rdsn has been a part of Pegasus and is no longer a "third-party" library.
Secondly I also agree that in the first stage we just "move" without any code change. Actually there are some unreasonable structures in current directories, however any modification will change code. I think each modification can be launched as an independent issue to solve. -- Best wishes, Dan On Wed, Oct 19, 2022 at 3:35 PM Yingchun Lai <[email protected]> wrote: > I've described this change in GitHub [1], and also show the refactor in the > mail list here. > Keep in mind that this is not the final view of the structure, we will do > more small adjusticement in the future. > > Directories in `src` before this refactor: > ``` > . > ├── base > │ └── test > ├── client_lib > ├── geo > │ ├── bench > │ ├── lib > │ └── test > ├── include > │ ├── pegasus > │ └── rrdb > ├── rdsn > │ └── src > │ ├── aio > │ │ └── test > │ ├── block_service > │ │ ├── fds > │ │ ├── hdfs > │ │ ├── local > │ │ └── test > │ ├── client > │ ├── common > │ │ ├── serialization_helper > │ │ └── test > │ ├── failure_detector > │ │ └── test > │ ├── http > │ │ └── test > │ ├── meta > │ │ ├── duplication > │ │ └── test > │ │ ├── balancer_simulator > │ │ ├── meta_state > │ │ └── misc > │ ├── nfs > │ │ └── test > │ ├── perf_counter > │ │ └── test > │ ├── remote_cmd > │ ├── replica > │ │ ├── backup > │ │ │ └── test > │ │ ├── bulk_load > │ │ │ └── test > │ │ ├── duplication > │ │ │ └── test > │ │ ├── split > │ │ │ └── test > │ │ ├── storage > │ │ │ └── simple_kv > │ │ │ └── test > │ │ └── test > │ ├── runtime > │ │ ├── rpc > │ │ ├── security > │ │ ├── task > │ │ └── test > │ ├── tools > │ ├── utils > │ │ ├── absl > │ │ │ ├── base > │ │ │ │ └── internal > │ │ │ └── utility > │ │ ├── hpc_locks > │ │ ├── long_adder_bench > │ │ └── test > │ │ └── nth_element_bench > │ └── zookeeper > │ └── test > ├── redis_protocol > │ ├── proxy > │ ├── proxy_lib > │ └── proxy_ut > ├── reporter > ├── sample > ├── server > │ └── test > ├── shell > │ ├── commands > │ ├── linenoise > │ └── sds > └── test > ├── bench_test > ├── function_test > │ ├── backup_restore_test > │ ├── base_api_test > │ ├── bulk_load_test > │ ├── detect_hotspot_test > │ ├── partition_split_test > │ ├── recovery_test > │ ├── restore_test > │ ├── throttle_test > │ └── utils > ├── kill_test > └── pressure_test > ``` > > Directories in `src` after this refactor: > ``` > . > ├── aio > │ └── test > ├── base > │ └── test > ├── block_service > │ ├── fds > │ ├── hdfs > │ ├── local > │ └── test > ├── client > ├── client_lib > ├── common > │ ├── serialization_helper > │ └── test > ├── failure_detector > │ └── test > ├── geo > │ ├── bench > │ ├── lib > │ └── test > ├── http > │ └── test > ├── include > │ ├── pegasus > │ └── rrdb > ├── meta > │ ├── duplication > │ └── test > │ ├── balancer_simulator > │ ├── meta_state > │ └── misc > ├── nfs > │ └── test > ├── perf_counter > │ └── test > ├── redis_protocol > │ ├── proxy > │ ├── proxy_lib > │ └── proxy_ut > ├── remote_cmd > ├── replica > │ ├── backup > │ │ └── test > │ ├── bulk_load > │ │ └── test > │ ├── duplication > │ │ └── test > │ ├── split > │ │ └── test > │ ├── storage > │ │ └── simple_kv > │ │ └── test > │ └── test > ├── reporter > ├── runtime > │ ├── rpc > │ ├── security > │ ├── task > │ └── test > ├── sample > ├── server > │ └── test > ├── shell > │ ├── commands > │ ├── linenoise > │ └── sds > ├── test > │ ├── bench_test > │ ├── function_test > │ │ ├── backup_restore_test > │ │ ├── base_api_test > │ │ ├── bulk_load_test > │ │ ├── detect_hotspot_test > │ │ ├── partition_split_test > │ │ ├── recovery_test > │ │ ├── restore_test > │ │ ├── throttle_test > │ │ └── utils > │ ├── kill_test > │ └── pressure_test > ├── tools > ├── utils > │ ├── absl > │ │ ├── base > │ │ │ └── internal > │ │ └── utility > │ ├── hpc_locks > │ ├── long_adder_bench > │ └── test > │ └── nth_element_bench > └── zookeeper > └── test > ``` > > 1. > > https://github.com/apache/incubator-pegasus/issues/1053#issuecomment-1283555776 > > > Best regards, > Yingchun Lai > > > On Wed, Oct 19, 2022 at 9:54 AM Tao Wu <[email protected]> > wrote: > > > It sounds good to me. I don't see any negative impact as long as the > final > > branch is compile-able. My personal suggestion is that you can do it at > > weekend (Oct 22) so that the pending PR won't break your refactoring > > frequently. In my experience in many enormous refactorings to RisingWave, > > it did work better. Also, I personally suggest that you can create an > issue > > for the final structure. The community should have a consensus on that > > before you do the refactoring. > > > > Yingchun Lai <[email protected]> 于 2022年10月18日周二 下午11:58写道: > > > > > Hi Pegasus developers, > > > After the xiaomi/rdsn project being merged into the Pegasus project, > the > > > rdsn source code directory structure is kept as before in the > independent > > > xiaomi/rdsn repository. But it's just a temporary status, we are > planning > > > to integrate the two projects closer in the long-term plan. > > > The following things I'm going to do is moving source code directories > in > > > 'src/rdsn/src/*' to 'src/*', for example, > > > '*src/rdsn/src/*runtime/api_task.h' > > > will be moved to '*src/*runtime/api_task.h', this change will make the > > > source structure more simple and easier to understand and accept by > more > > > new comer of Pegasus. > > > Of course, it's just one step of the whole refractory plan, the > > > 'src/rdsn/include/*' files have been moved to the places where they are > > > more related to by pull request [1]. And there will be more refactors > to > > > modularize the source files in the future. > > > However, this change will influence hundreds of files, their paths will > > be > > > changed, even though there are no functional changes. This change is > > > presented by this [2] pull request, I want to hear some feedback about > > it. > > > If there is no veto on it, I'm planning to merge it into the master > > branch > > > this Friday(2022.10.21 16:00:00 UTC). > > > Thanks! > > > > > > 1. https://github.com/apache/incubator-pegasus/pull/1189 > > > 2. https://github.com/apache/incubator-pegasus/pull/1190 > > > > > > Kind regards, > > > Yingchun > > > > > >
