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

feat: Adapt ckb light node (#2590) #2615

Merged
merged 27 commits into from
May 29, 2023
Merged

feat: Adapt ckb light node (#2590) #2615

merged 27 commits into from
May 29, 2023

Conversation

Keith-CY
Copy link
Collaborator

@Keith-CY Keith-CY commented Mar 24, 2023

Screenshot 2023-05-18 at 01 47 24

https://youtu.be/tQm9YvgG7iE


Using a MacBook Pro (13-inch, M1, 2020) device as an example, we realistically tested the synchronization from 0 to the latest block (2023/05/22 Pudge network data, excluding the time to find a trusted height):

Light node: synchronization time about 5 hours and 30 minutes, data about 45M; (light client mode disk consumption is related to the number of account transactions, the test account a total of 782 transaction records)
Full node: about 36 hours for synchronization, about 107.8G of data;

The above test data in the case of the same equipment and network, light node compared to full node synchronization time reduced 84.7% disk use reduced 99.9% (data for reference only, due to different equipment, network and account data, may be different from the experimental data)

Excerpt from Magickbase/neuron-public-issues#138 (comment)

yanguoyu and others added 8 commits April 21, 2023 10:00
* fix: Download light client binary when transfer system type and unzip config.toml
ckb light client [email protected] works on ubuntu 20.04 while ckb
light [email protected] doesn't due to openssl compatibility
* fix: Fix some bugs, details are in description.

1. Fetch some contract blocks when starting the sync
2. Use `getHeader` to replace `getHeaderByNumber`
3. Get live cells from local SQLITE when generating transactions.
4. Remove `getBlockchainInfo` from UI because chainInfo is not used in UI.
5. When call setCurrent should restart queue when network is light client.
@Keith-CY
Copy link
Collaborator Author

CI failed at e440f1b

@Keith-CY
Copy link
Collaborator Author

@yanguoyu
Copy link
Collaborator

The blames at https://github.com/nervosnetwork/neuron/actions/runs/4760729869/jobs/8461313831#step:9:2115 blocks PR #2649

I fix the test case in the PR #2642, but it needs to wait for some reason. So I split the commit that fixes the test case to a new PR #2650.

yanguoyu and others added 17 commits April 26, 2023 07:02
* fix: Fix test case

* fix: Merge test case fix into a branch.
…and indexer (#2679)

* fix: Fix dao progress bar and light client should not verify version and indexer.

* fix: use const if variable will not change.

* feat: update light client version.

* fix: More clear code.
* fix: Fix multisig with light client

1. Any multisig script should sync from 0.
2. When adding multisig address after deletion, it should start sync again.
3. Every 10s to refresh multisig sync height, not when multisig address changes.
@Keith-CY Keith-CY marked this pull request as ready for review May 29, 2023 02:56
@Keith-CY
Copy link
Collaborator Author

Light client mode has been verified by Acceptance team, and it can be merged into the release candidate for the full regression test. @yanguoyu @FrederLu

@Keith-CY Keith-CY changed the base branch from develop to rc/v0.110.0 May 29, 2023 03:00
@Keith-CY Keith-CY changed the base branch from rc/v0.110.0 to develop May 29, 2023 03:00
@Keith-CY Keith-CY merged commit 1dfd255 into develop May 29, 2023
@Keith-CY Keith-CY deleted the support-light-client branch May 29, 2023 07:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants