Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SC] Optimization of the frequent RPC requests #1294

Open
hyunsooda opened this issue Mar 31, 2022 · 2 comments
Open

[SC] Optimization of the frequent RPC requests #1294

hyunsooda opened this issue Mar 31, 2022 · 2 comments
Labels
enhancement New feature or enhancement

Comments

@hyunsooda
Copy link
Contributor

hyunsooda commented Mar 31, 2022

The current RPC handler implementation in SC has unnecessarily frequent transfer logic. For example,

Sender                                 Receiver 
Send _txreq_         -------------->  
Send _receiptreq_ --------------> 
Send again if the receipt didn't arrived:
  Send _txreq_         -------------->  
  Send _receiptreq_ -------------->

                    <--------------   Send _receiptres_

The sender sends two requests. If the receiver runs a thread that sends a receipt response when a receipt is in a new block, It can be reduced to one request. However, it accompanies somewhat a little change in the implemented RPC structure.

@hyunsooda
Copy link
Contributor Author

The bridge tx receipt is created on the counterpart chain and thus the receipt request is required unless the mainbridge node pushes to subbridge node a corresponding receipt of the bridge tx. However, the request-response handler pair can be changed to a single request message manner. (e.g., pull manner to push manner), but it requires an addition to the chain head event on the mainbridge node that tracks the corresponding tx receipts.

@exalate-issue-sync
Copy link

Exalate commented: Issue Created by: hyunsooda

@sjnam sjnam added enhancement New feature or enhancement and removed Github labels Sep 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or enhancement
Projects
None yet
Development

No branches or pull requests

2 participants