From 0ad06660ea5efacce59949fd1a5837026a92c63f Mon Sep 17 00:00:00 2001 From: musitdev Date: Tue, 1 Aug 2023 19:53:33 +0200 Subject: [PATCH] update task --- docs/rpcv2.md | 70 +++++++++++++++++++++++++++++++++------------------ docs/tasks.md | 69 +++++++++++++++++++++++++++++++------------------- 2 files changed, 88 insertions(+), 51 deletions(-) diff --git a/docs/rpcv2.md b/docs/rpcv2.md index 9a39a98b..30bd72f7 100644 --- a/docs/rpcv2.md +++ b/docs/rpcv2.md @@ -975,25 +975,15 @@ stateDiagram s3: Block storage s4: Cluster storage b1: Block processing - b2: Update block - b3: get block - b4: get current data b5: Block RPC call t1: Tx processing - t2: notify Tx - t22: update Tx cache t3: Sendtransacton - t333: replay Tx - t33: confirm Tx - t4: get Tx + Status + t4: Tx RPC call h1: History getBlock h2: History getBlocks h3: History calls - cl1: Cluster data + cl1: Cluster processing cl2: cluster RPC solana - cl3: cluster epoch update - cl4: cluster info - cl5: cluster epoch notification cl6: cluster RPC call @@ -1010,25 +1000,55 @@ stateDiagram s2 --> s4 a1 --> s2 a1 --> b1 - b1 --> b2 - b2 --> b3 - b2 --> b4 - b4 --> b5 + b1 --> b5 a1 --> t1 - t1 --> t2 - t1 --> t22 t1 --> t3 t1 --> t4 - t2 --> t33 - t33 --> t333 cl1 --> cl2 - cl1 --> cl3 - c4 --> cl4 - cl3 --> cl5 - cl5 --> cl6 + cl1 --> cl6 s3 --> h1 c22 --> h1 - b3 --> h1 + b1 --> h1 h1 --> h2 h2 --> h3 ``` + + +#### Tasks list + +- Architecture skeleton: do the mimimun code to define the first version of the architecture implementation. +- geyser connector: Geyser connector code to all geyser data. Data not available use the current RPC access. +- Faithful connector: connect to the Faithful service to query their method. +- Triton block index: research task on do we use the triton block index and how. +- TPU connector: manage TPU connection and connect to a specified validator's TPU port and send Tx batch +- gossip listening: Listen to validator gossip and extract data. +- Data model: define the stored data model + indexes for block and Cluster. +- Storage definition: implement the storage infra to host block and cluster data query. +- Block storage: implement block storage with epoch switch +- Cluster storage: implement cluster storage with epoch switch +- Block processing: implement block processing management. Base task: + - Update block: update block process + - get block: get block from cache and storage. + - get current data: get block current data +- Block RPC call: implements block RPC call. +- Tx processing: implement Tx processing algo + - notify Tx: notify Tx to other modules + - update Tx cache +- Sendtransacton + - send Tx + - confirm Tx + - replay Tx +- Tx RPC call: get Tx + Status +- History getBlock: integrate block index or/and call Faithful service +- History getBlocks: query indexes or add Faithful service call. +- History other calls: implements the other history call. +- Cluster processing: cluster data processing implementation. + - cluster data + - cluster epoch update + - cluster info + - cluster epoch notification +- Cluster RPC solana +- Cluster RPC call + + + diff --git a/docs/tasks.md b/docs/tasks.md index 161234e8..5bacdafe 100644 --- a/docs/tasks.md +++ b/docs/tasks.md @@ -1,4 +1,4 @@ -## Task definition +### Task definition ```mermaid stateDiagram @@ -13,25 +13,15 @@ stateDiagram s3: Block storage s4: Cluster storage b1: Block processing - b2: Update block - b3: get block - b4: get current data b5: Block RPC call t1: Tx processing - t2: notify Tx - t22: update Tx cache t3: Sendtransacton - t333: replay Tx - t33: confirm Tx - t4: get Tx + Status + t4: Tx RPC call h1: History getBlock h2: History getBlocks h3: History calls - cl1: Cluster data + cl1: Cluster processing cl2: cluster RPC solana - cl3: cluster epoch update - cl4: cluster info - cl5: cluster epoch notification cl6: cluster RPC call @@ -48,25 +38,52 @@ stateDiagram s2 --> s4 a1 --> s2 a1 --> b1 - b1 --> b2 - b2 --> b3 - b2 --> b4 - b4 --> b5 + b1 --> b5 a1 --> t1 - t1 --> t2 - t1 --> t22 t1 --> t3 t1 --> t4 - t2 --> t33 - t33 --> t333 cl1 --> cl2 - cl1 --> cl3 - c4 --> cl4 - cl3 --> cl5 - cl5 --> cl6 + cl1 --> cl6 s3 --> h1 c22 --> h1 - b3 --> h1 + b1 --> h1 h1 --> h2 h2 --> h3 ``` + + +#### Tasks list + +- Architecture skeleton: do the mimimun code to define the first version of the architecture implementation. +- geyser connector: Geyser connector code to all geyser data. Data not available use the current RPC access. +- Faithful connector: connect to the Faithful service to query their method. +- Triton block index: research task on do we use the triton block index and how. +- TPU connector: manage TPU connection and connect to a specified validator's TPU port and send Tx batch +- gossip listening: Listen to validator gossip and extract data. +- Data model: define the stored data model + indexes for block and Cluster. +- Storage definition: implement the storage infra to host block and cluster data query. +- Block storage: implement block storage with epoch switch +- Cluster storage: implement cluster storage with epoch switch +- Block processing: implement block processing management. Base task: + - Update block: update block process + - get block: get block from cache and storage. + - get current data: get block current data +- Block RPC call: implements block RPC call. +- Tx processing: implement Tx processing algo + - notify Tx: notify Tx to other modules + - update Tx cache +- Sendtransacton + - send Tx + - confirm Tx + - replay Tx +- Tx RPC call: get Tx + Status +- History getBlock: integrate block index or/and call Faithful service +- History getBlocks: query indexes or add Faithful service call. +- History other calls: implements the other history call. +- Cluster processing: cluster data processing implementation. + - cluster data + - cluster epoch update + - cluster info + - cluster epoch notification +- Cluster RPC solana +- Cluster RPC call