Skip to content

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

Merged
Keith-CY merged 27 commits into
developfrom
support-light-client
May 29, 2023
Merged

feat: Adapt ckb light node (#2590)#2615
Keith-CY merged 27 commits into
developfrom
support-light-client

Conversation

@Keith-CY
Copy link
Copy Markdown
Contributor

@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 portable@v0.2.2 works on ubuntu 20.04 while ckb
light client@v0.2.2 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.
@yanguoyu yanguoyu force-pushed the support-light-client branch from f0f680a to e440f1b Compare April 21, 2023 02:14
@Keith-CY
Copy link
Copy Markdown
Contributor Author

CI failed at e440f1b

@Keith-CY
Copy link
Copy Markdown
Contributor Author

@yanguoyu
Copy link
Copy Markdown
Contributor

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 Keith-CY requested review from FrederLu and yanguoyu May 29, 2023 02:56
@Keith-CY
Copy link
Copy Markdown
Contributor 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