Skip to content

Conversation

@PastaPastaPasta
Copy link
Member

This does a couple of things, it's an alternative to #3484, and works on #3485.

This changes litemode from "disable almost all Dash stuff" to "disable governance validation"

With this change I was able to start a node with ./src/qt/dash-qt --testnet --litemode --txindex=0 --prune=945 allowing me to mix, have IS/CL stuff and do almost full validation, all while not needing txindex and while not saving the whole chain on disk.

@PastaPastaPasta PastaPastaPasta requested a review from UdjinM6 May 16, 2020 19:25

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code reading suggestion: use gArgs.GetBoolArg("-enableprivatesend", false) as this example:
https://github.com/dashpay/dash/blob/develop/src/wallet/wallet.cpp#L906

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this shouldn't be the case. That second argument is the default, what this line is saying is if "-enableprivatesend" isn't specified, assume that privatesend is enabled, so that someone would have to specifically disable privatesend with "-enableprivatesend=0"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you are right, i thought that was comparing but the second argument is the default value indeed

Copy link

@UdjinM6 UdjinM6 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See below + should tweak few lines with !fLiteMode && settings.value("fShowMasternodesTab").toBool() (drop !fLiteMode && part) in src/qt/bitcoingui.cpp and rc/qt/walletview.cpp.

@PastaPastaPasta
Copy link
Member Author

see latest commits: have not tested yet

Copy link
Collaborator

@thephez thephez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this PR renders #3478 changes inaccurate those messages (re: litemode) should be removed.

@forro68
Copy link

forro68 commented Jun 9, 2020

Excellent PR, thank you Pasta for looking into this. Not only would this benefit normal users on the desktop, the breakthrough here could show the way forward for privatesend on native mobile apps.
I hope this can be included in 0.17.

0.15 Lite mode downloads full blockchain. #3341
0.15 Choice at first launch: Lite Mode or Full Mode #3340

@PastaPastaPasta
Copy link
Member Author

I think all has been resolved

@UdjinM6
Copy link

UdjinM6 commented Jun 10, 2020

@PastaPastaPasta
Copy link
Member Author

Looks good, cherry-picked

@PastaPastaPasta PastaPastaPasta changed the title Litemode changes Change litemode from disableing all Dash specific features to disabling governance validation Jun 10, 2020
@UdjinM6 UdjinM6 changed the title Change litemode from disableing all Dash specific features to disabling governance validation Change litemode from disabling all Dash specific features to disabling governance validation Jun 11, 2020
@UdjinM6 UdjinM6 added this to the 17 milestone Jun 12, 2020
Copy link

@UdjinM6 UdjinM6 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems to be working as expected 👍

Slightly tested ACK

Copy link

@xdustinface xdustinface left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good 👍

utACK

@UdjinM6 UdjinM6 merged commit 5ea76e8 into dashpay:develop Jun 13, 2020
@forro68
Copy link

forro68 commented Jun 26, 2020

Is there any chance this could be included in 0.16? I think it could be useful to allow us to use it as beta testers, then maybe make a bigger announcement for it in 0.17.

@PastaPastaPasta
Copy link
Member Author

Hmm, yeah. I think it probably makes sense to include in 0.16 now... Thoughts @UdjinM6?

@UdjinM6
Copy link

UdjinM6 commented Jun 27, 2020

it probably makes sense to include in 0.16 now

Agree, changes look trivial-ish. Tweaked the milestone.

@PastaPastaPasta PastaPastaPasta deleted the litemode-is branch June 27, 2020 16:17
PastaPastaPasta added a commit to PastaPastaPasta/dash that referenced this pull request Aug 23, 2020
…g governance validation (dashpay#3488)

* enable privatesend by default in litemode

Signed-off-by: Pasta <[email protected]>

* remove useless litemode check in CPrivateSendServer::ProcessMessage, must be MN, so must have litemode off already

Signed-off-by: Pasta <[email protected]>

* change litemode to mean, doesn't validate governance, but has all other dash features

Signed-off-by: Pasta <[email protected]>

* litemode must be off for MNs cont

Signed-off-by: Pasta <[email protected]>

* change litemode help text

Signed-off-by: Pasta <[email protected]>

* don't skip MN sync in litemode

Signed-off-by: Pasta <[email protected]>

* drop fLiteMode in bitcoingui.cpp

Signed-off-by: Pasta <[email protected]>

* skip governance sync in litemode

Signed-off-by: pasta <[email protected]>

* remove fLiteMode in walletview.cpp

Signed-off-by: pasta <[email protected]>

* add back

Signed-off-by: pasta <[email protected]>

* fix comments

* fix cache loading

* fix scheduled tasks

* Fix help text for some rpcs (revert what's left of 3478)

Co-authored-by: UdjinM6 <[email protected]>
@PastaPastaPasta
Copy link
Member Author

backported in #3670

gades pushed a commit to cosanta/cosanta-core that referenced this pull request Feb 22, 2022
…g governance validation (dashpay#3488)

* enable privatesend by default in litemode

Signed-off-by: Pasta <[email protected]>

* remove useless litemode check in CPrivateSendServer::ProcessMessage, must be MN, so must have litemode off already

Signed-off-by: Pasta <[email protected]>

* change litemode to mean, doesn't validate governance, but has all other dash features

Signed-off-by: Pasta <[email protected]>

* litemode must be off for MNs cont

Signed-off-by: Pasta <[email protected]>

* change litemode help text

Signed-off-by: Pasta <[email protected]>

* don't skip MN sync in litemode

Signed-off-by: Pasta <[email protected]>

* drop fLiteMode in bitcoingui.cpp

Signed-off-by: Pasta <[email protected]>

* skip governance sync in litemode

Signed-off-by: pasta <[email protected]>

* remove fLiteMode in walletview.cpp

Signed-off-by: pasta <[email protected]>

* add back

Signed-off-by: pasta <[email protected]>

* fix comments

* fix cache loading

* fix scheduled tasks

* Fix help text for some rpcs (revert what's left of 3478)

Co-authored-by: UdjinM6 <[email protected]>
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.

6 participants