Hi all,

This patch has been merged as e52e8794dc0454b09fabeb92b44cdd858a514dfe on
master branch, thanks!

Best regards,
Yingchun Lai


On Thu, Oct 20, 2022 at 9:39 PM Dan Wang <[email protected]> wrote:

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

Reply via email to