Commit Graph

21 Commits

Author SHA1 Message Date
HolyLow
9bae3fbd5e [CELEBORN-1915][CIP-14] Add reader's ShuffleClient to cppClient
### What changes were proposed in this pull request?
This PR adds reader end's ShuffleClient to cppClient.

### Why are the changes needed?
ShuffleClient is the user interface for cppClient usage.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation.

Closes #3156 from HolyLow/issue/celeborn-1915-add-reader-shuffle-client-to-cppclient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-03-25 17:54:34 +08:00
HolyLow
a5214e2535 [CELEBORN-1906][CIP-14] Add CelebornInputStream to cppClient
### What changes were proposed in this pull request?
This PR adds CelebornInputStream to cppClient.

### Why are the changes needed?
The CelebornInputStream is the readerClient's feeding stream.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation.

Closes #3151 from HolyLow/issue/celeborn-1906-add-celeborn-input-stream-to-cppclient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-03-14 22:31:51 +08:00
HolyLow
595ab41f5e [CELEBORN-1881][CIP-14] Add WorkerPartitionReader to cppClient
### What changes were proposed in this pull request?
This PR adds WorkerPartitionReader to cppClient.

### Why are the changes needed?
WorkerPartitionReader is the building block of CelebornInputStream.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3137 from HolyLow/issue/celeborn-1881-add-workerpartitionreader-to-cppclient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-03-10 20:47:17 +08:00
HolyLow
8c04e5e8a0 [CELEBORN-1871][CIP-14] Add NettyRpcEndpointRef to cppClient
### What changes were proposed in this pull request?
This PR adds NettyRpcEndpointRef to cppClient.

### Why are the changes needed?
NettyRpcEndpointRef is responsible for communicating with LifecycleManager.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3110 from HolyLow/issue/celeborn-1871-add-nettyrpcendpointref-to-cpp-client.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: Shuang <lvshuang.xjs@alibaba-inc.com>
2025-02-24 18:04:48 +08:00
HolyLow
113c7eadb7 [CELEBORN-1863][CIP-14] Add TransportClient to cppClient
### What changes were proposed in this pull request?
This PR adds TransportClient to cppClient.

### Why are the changes needed?
The TransportClient is responsible for sending/receiving the message to/from network.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3097 from HolyLow/issue/celeborn-1863-add-transport-client-to-cpp-client.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-02-15 11:44:23 +08:00
HolyLow
39a40dd2a1 [CELEBORN-1845][CIP-14] Add MessageDispatcher to cppClient
### What changes were proposed in this pull request?
This PR adds MessageDispatcher class to cppClient.

### Why are the changes needed?
MessageDispatcher is responsible for recording the connection between MessageFuture and MessagePromise, which is the base of async message transferring mechanism.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3077 from HolyLow/issue/celeborn-1845-add-message-dispatcher-to-cpp-client.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-01-22 20:07:22 +08:00
HolyLow
35a14d2469 [CELEBORN-1836][CIP-14] Add Message to cppClient
### What changes were proposed in this pull request?
This PR adds Message implementation to cppClient.

### Why are the changes needed?
The Message is the data structure that transfers between network stack layers.
The decode/encode methods are supported and are compatible with existing java implementation.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3066 from HolyLow/issue/celeborn-1836-add-message-to-cpp-client.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: Shuang <lvshuang.xjs@alibaba-inc.com>
2025-01-18 12:52:32 +08:00
HolyLow
eb950c82e5 [CELEBORN-1827][CIP-14] Add messageDecoder to cppClient
### What changes were proposed in this pull request?
This PR adds MessageDecoder to cppClient.

### Why are the changes needed?
MessageDecoder is the underlaying decoding stack for wangle network msg processing framework.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3060 from HolyLow/issue/celeborn-1827-add-message-decoder-to-cpp-client.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-01-10 16:42:31 +08:00
HolyLow
b74e05b603 [CELEBORN-1821][CIP-14] Add controlMessages to cppClient
### What changes were proposed in this pull request?
This PR adds ControlMessages to cppClient.

### Why are the changes needed?
The ControlMessages are used to communicate with the CelebornServer and LifecycleManager.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3052 from HolyLow/issue/celeborn-1821-add-control-messages-to-cpp-client.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-01-08 13:35:09 +08:00
HolyLow
6853b23b49 [CELEBORN-1819][CIP-14] Refactor cppClient with nested namespace
### What changes were proposed in this pull request?
This PR refactors cppClient to use nested namespace.

### Why are the changes needed?
The nested namespace would improve symbol isolation and make the celebornCpp project more extensible.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3050 from HolyLow/issue/celeborn-1819-refactor-cppClient-with-nested-namespace.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-01-04 15:56:45 +08:00
HolyLow
8b096ea879 [CELEBORN-1814][CIP-14] Add transportMessage to cppClient
### What changes were proposed in this pull request?
Add transportMessage to cppClient.

### Why are the changes needed?
TransportMessage is the building block of controlMessages.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3042 from HolyLow/issue/celeborn-1814-add-transport-message-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2025-01-03 16:18:50 +08:00
HolyLow
4714e91420 [CELEBORN-1809][CIP-14] Add partitionLocation to cppClient
### What changes were proposed in this pull request?
This PR adds PartitionLocation to cppClient, which is the component of protocol module.

### Why are the changes needed?
To support communication message of PartitionLocation.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3035 from HolyLow/issue/celeborn-1809-add-partition-location-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-12-27 20:38:43 +08:00
HolyLow
7f030d424d [CELEBORN-1799][CIP-14] Add celebornConf to cppClient
### What changes were proposed in this pull request?
Add CelebornConf to cppClient.

### Why are the changes needed?
The CelebornConf will be used as configuration module in cppClient.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3027 from HolyLow/issue/celeborn-1799-add-celeborn-conf-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-12-25 20:07:35 +08:00
HolyLow
e496a3cfae [CELEBORN-1785][CIP-14] Add baseConf to cppClient
### What changes were proposed in this pull request?
Add baseConf to cppClient, which is the building block of conf module.

### Why are the changes needed?
To support CelebornCpp configuration module in cppClient.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #3013 from HolyLow/issue/celeborn-1785-add-base-conf-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-12-23 16:45:02 +08:00
HolyLow
e75d84fc19 [CELEBORN-1772][CIP-14] Add memory module to cppClient
### What changes were proposed in this pull request?
Add memory module to cppClient to provide ByteBuffer functionality.

### Why are the changes needed?
The memory module is added to provide ByteBuffer functionality, which would be used across the data parsing layers.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #2996 from HolyLow/issue/celeborn-1772-add-memory-module-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-12-17 17:52:38 +08:00
HolyLow
80ebb19836 [CELEBORN-1761][CIP-14] Add cppProto to cppClient
### What changes were proposed in this pull request?
Add cppProto (TransportMessages.proto, softlinked as TransportMessagesCpp.proto) to cppClient

### Why are the changes needed?
To support proto in cppClient and align with java's definition.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation.

Closes #2976 from HolyLow/issue/celeborn-1761-add-cpp-proto-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-12-10 17:04:46 +08:00
HolyLow
b2b9a0ab4b [CELEBORN-1754][CIP-14] Add exceptions and checking utils to cppClient
### What changes were proposed in this pull request?
This PR adds exceptions and checking utils code to CppClient.
Besides, the ctest framework is added to CppClient for UTs.

### Why are the changes needed?
To provide exception utils and UT frmework to CppClient.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation and UTs.

Closes #2966 from HolyLow/issue/celeborn-1754-add-exceptions-utils-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-12-04 14:05:38 +08:00
HolyLow
6a0f763e23 [CELEBORN-1751][CIP-14] Add celebornException utils to cppClient
### What changes were proposed in this pull request?
This PR adds CelebornException utils code to CppClient.

### Why are the changes needed?
To provide CelebornException utils.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation.

Closes #2958 from HolyLow/issue/celeborn-1751-add-celeborn-exception-utils-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-11-28 11:10:58 +08:00
HolyLow
1aefd8f42e [CELEBORN-1740][CIP-14] Add stackTrace utils to cppClient
### What changes were proposed in this pull request?
This PR adds StackTrace utils code to CppClient.

### Why are the changes needed?
To provide StackTrace utils.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation.

Closes #2951 from HolyLow/issue/celeborn-1740-add-stacktrace-utils-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-11-27 14:21:51 +08:00
HolyLow
77c7a8b91d [CELEBORN-1741][CIP-14] Add processBase utils to cppClient
### What changes were proposed in this pull request?
This PR adds CMakeList structure and ProcessBase utils code to CppClient.

### Why are the changes needed?
To organize the compiling structure and to provide ProcessBase utils.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Compilation.

Closes #2940 from HolyLow/issue/celeborn-1741-add-processbase-utils-to-cppClient.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-11-26 13:38:16 +08:00
HolyLow
71bd45577a [CELEBORN-1724][CIP-14] Add environment setup tools for CppClient development
### What changes were proposed in this pull request?
This PR adds environment setup tools, docker image & container especially, for CppClient development.

### Why are the changes needed?
To develop CppClient functionality and solve library dependencies.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
E2E.

Closes #2927 from HolyLow/issue/celeborn-1724-add-cppClient-devTools.

Authored-by: HolyLow <jiaming.xie7@gmail.com>
Signed-off-by: mingji <fengmingxiao.fmx@alibaba-inc.com>
2024-11-22 19:58:45 +08:00