fu220
61d686b267
merge the local_only feature from PR#513
2025-07-23 07:11:02 +00:00
Gaius
c619a3c8ac
feat: local_only specifies whether to query task information from local client only ( #513 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-23 11:53:20 +08:00
fu220
8a5885e249
# Description
...
This pull request introduces APIs for the new Cache Task mechanism, enabling support for memory cache operations. Additionally, by refactoring the Download model and removing the load_to_cache field, the Task component now focuses exclusively on disk I/O operations, while the Cache Task handles memory cache operations. Finally, the version number of the dragonfly-api package has been incremented.
## Key Changes
### common.proto
- Added a new enum type Cache to TaskType to identify CacheTask.
- Introduced a new structure CachePeer to represent peers handling cache tasks.
- Added a new structure CacheTask to define metadata for cache tasks.
- Removed the load_to_cache field from the Download structure, as Tasks will no longer handle cache operations.
### dfdaemon.proto
- Added three RPC calls (DownloadCacheTask, StatCacheTask, DeleteCacheTask) to the DfdaemonUpload and DfdaemonDownload services for cache task management.
- Added two RPC calls (SyncCachePieces, DownloadCachePiece) to the DfdaemonUpload service for cache piece synchronization.
- Introduced 9 new message types to support requests and responses for CacheTask downloads.
### scheduler.proto
- Added five RPC calls to the Scheduler service: AnnounceCachePeer, StatCachePeer, DeleteCachePeer for cache peer management. StatCacheTask, DeleteCacheTask for cache task management.
- Introduced 16 new message types to cover the full lifecycle state transitions of cache tasks.
## Version Update
- Incremented the version of the dragonfly-api package from 2.1.47 to 2.1.48 in Cargo.toml to reflect the new changes.
## Related Issue
## Motivation and Context
- Separation of Responsibilities: Tasks now focus exclusively on disk I/O operations, while CacheTask independently handles memory cache management.
Signed-off-by: fu220 <2863318196@qq.com>
2025-07-22 09:52:58 +00:00
Gaius
8165c4bff1
feat: remove remote_ip in DownloadPersistentCachePieceRequest
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-22 14:24:43 +08:00
Gaius
71e4d8083f
feat: add remote ip for request ( #511 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-22 13:02:08 +08:00
Gaius
be780d75c1
feat: add remote ip for request ( #510 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-21 17:28:46 +08:00
Gaius
928e93e8fe
feat: update ListTaskEntriesResponse by removing unused fields ( #508 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-16 19:19:03 +08:00
Gaius
20d9c4bc90
feat: add ListTaskEntries for downloading directory ( #505 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-08 11:45:19 +08:00
Gaius
b3635340f7
feat: add digest for download task and supports CRC32, SHA256, and SHA512 algorithms ( #502 )
...
feat: add digest for download task and supports CRC32, SHA256, and SHA512 algorithms.
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-06-27 12:26:56 +08:00
Gaius
07d2017a8a
feat: add content_for_calculating_task_id for UploadPersistentCacheTaskRequest ( #486 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-04-24 18:03:20 +08:00
Gaius
e264b50709
feat: add force_hard_link for DownloadPersistentCacheTaskRequest ( #475 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-03-28 15:35:55 +08:00
Gaius
b7701531cf
feat: add ExchangeIBVerbsQueuePairEndpoint for DfdaemonUpload ( #474 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-03-25 18:34:27 +08:00
Gaius
6bd235200f
feat: add IbVerbsConnection service to support connection between ibverbs peers ( #473 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-03-24 20:16:07 +08:00
Gaius
be1ca95b4c
feat: remove piece_length in Task ( #466 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-02-26 11:43:43 +08:00
Gaius
b040351547
feat: add validation for piece_length ( #465 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-02-24 15:52:00 +08:00
Gaius
ff110f324b
feat: add piece_length for Persistent Cache Task ( #464 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-02-24 12:26:26 +08:00
Gaius
9bee47043a
feat: add digest for DownloadPersistentCachePieceResponse ( #460 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-02-14 11:04:22 +08:00
KennyMcCormick
ff1adb1882
add digest in DownloadPieceResponse ( #457 )
...
Signed-off-by: cormick <cormick1080@gmail.com>
2025-02-12 11:22:36 +08:00
Gaius
45c2817e5e
feat: add task_id for UploadPersistentCacheTask
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-26 20:21:14 +08:00
Gaius
c6f625f3ad
feat: add task_id for UpdatePersistentCacheTask
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-26 19:48:49 +08:00
Gaius
c8e0b2526f
feat: add UpdatePersistentCacheTask api
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-26 19:06:56 +08:00
Gaius
572faaa58f
feat: add is_replicated for DownloadPersistentCacheTaskRequest
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-26 18:08:27 +08:00
Gaius
05b74d50e3
feat: remove update_persistent_cache_task api ( #451 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-24 17:52:18 +08:00
Gaius
c7f8c2a600
feat: add UpdatePersistentCacheTask for setting the value of persistent ( #449 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-21 22:14:01 +08:00
Gaius
161f9d810f
feat: add DownloadPersistentCachePiece and SyncPersistentCachePieces api ( #447 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-20 12:08:33 +08:00
Gaius
86b994e4ae
feat: remove timeout from PersistentCacheTask ( #444 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-17 15:27:13 +08:00
Gaius
352bcc2611
feat: set digest to optional for persistent cache task
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-15 14:15:43 +08:00
Gaius
76b2eac2d0
feat: add ReadPersistentCacheTask and WritePersistentCacheTask message ( #441 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-15 12:14:58 +08:00
Gaius
502a8fbe6e
feat: set output_path to optional and add need_piece_content for downloading persistent cache ( #435 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-01-02 15:51:29 +08:00
baowj
190d05d9bf
feat: add method SyncHost to service DfdaemonUpload ( #431 )
...
Signed-off-by: baowj <bwj_678@qq.com>
2024-12-31 16:48:34 +08:00
Gaius
28a7989601
feat: rename cache task to persistent cache task ( #394 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-09-26 15:34:55 +08:00
Gaius
5bd847f0a4
feat: remove piece length field in download request ( #368 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-08-12 15:53:15 +08:00
Gaius
7b5ecb7b15
feat: add optional for piece-length ( #367 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-08-12 14:40:04 +08:00
Gaius
a7ca1ad9ad
feat: add content_length to DownloadCacheTaskStartedResponse ( #355 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-07-17 21:49:15 +08:00
Gaius
10e977c133
feat: remove host_id in DownloadCacheTaskRequest ( #354 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-07-17 21:39:45 +08:00
Gaius
7d88b1c21b
feat: add persistent field to DownloadCacheTaskRequest ( #329 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-06-19 21:26:29 +08:00
Gaius
183280e924
fix: ttl validation format
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-06-18 14:45:53 +08:00
Gaius
7beb7a448f
feat: rename DownloadTask message to Download ( #324 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-06-17 15:07:40 +08:00
Gaius
39fa1f1591
feat: add cache task proto ( #323 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-06-17 14:54:30 +08:00
Gaius
370d97c837
feat: add host id to SyncPiecesRequest and DownloadPieceRequest ( #321 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-06-05 17:03:33 +08:00
Gaius
9f7fd897b8
feat: change TriggerDownloadTask to DownloadTask with stream ( #302 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-04-16 20:00:32 +08:00
Gaius
6bb1bedc70
feat: add error details to api ( #283 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-02-28 12:42:22 +08:00
Gaius
88ad05325e
fix: rename download_task_failed_request to download_task_failed_resp… ( #282 )
...
fix: rename download_task_failed_request to download_task_failed_response
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-02-27 20:34:22 +08:00
Gaius
9a73b42a15
feat: response http code and status ( #280 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-02-27 14:21:37 +08:00
Gaius
4ca58f1c92
feat: replace LeaveHostRequest with empty ( #271 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-02-06 22:24:03 +08:00
Gaius
b9e871c8cc
feat: add leave host to dfdaemon ( #270 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-02-06 22:09:54 +08:00
Gaius
54f7272979
feat: remove DownloadTaskFinishedResponse in DownloadTask ( #268 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-01-30 21:02:52 +08:00
Gaius
ace20e5419
feat: add interested piece metadates to DownloadTaskStartedResponse ( #267 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-01-30 14:26:42 +08:00
Gaius
758ec4e058
feat: add optional range to DownloadTaskStartedResponse message ( #266 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-01-30 13:32:11 +08:00
Gaius
6f6b2a8d7a
feat: rename request to response in DownloadTaskResponse ( #265 )
...
Signed-off-by: Gaius <gaius.qi@gmail.com>
2024-01-29 20:19:02 +08:00