Skip to content

Change litemode from disabling all Dash specific features to disabling governance validation#3488

Merged
UdjinM6 merged 14 commits into
dashpay:developfrom
PastaPastaPasta:litemode-is
Jun 13, 2020
Merged

Change litemode from disabling all Dash specific features to disabling governance validation#3488
UdjinM6 merged 14 commits into
dashpay:developfrom
PastaPastaPasta:litemode-is

Conversation

@PastaPastaPasta

Copy link
Copy Markdown
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
Comment thread src/rpc/privatesend.cpp Outdated

Copy link
Copy Markdown

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
Copy Markdown
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"

Copy link
Copy Markdown

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

@UdjinM6 UdjinM6 left a comment

Copy link
Copy Markdown

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.

Comment thread src/init.cpp Outdated
Comment thread src/spork.cpp Outdated
Comment thread src/privatesend/privatesend-server.cpp Outdated
@PastaPastaPasta

Copy link
Copy Markdown
Member Author

see latest commits: have not tested yet

Comment thread src/masternode/masternode-sync.cpp Outdated
Comment thread src/qt/bitcoingui.cpp Outdated
Comment thread src/qt/bitcoingui.cpp Outdated

@thephez thephez left a comment

Copy link
Copy Markdown
Collaborator

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

forro68 commented Jun 9, 2020

Copy link
Copy Markdown

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
Copy Markdown
Member Author

I think all has been resolved

Signed-off-by: Pasta <pasta@dashboost.org>
…must be MN, so must have litemode off already

Signed-off-by: Pasta <pasta@dashboost.org>
…er dash features

Signed-off-by: Pasta <pasta@dashboost.org>
Signed-off-by: Pasta <pasta@dashboost.org>
Signed-off-by: Pasta <pasta@dashboost.org>
Signed-off-by: Pasta <pasta@dashboost.org>
Signed-off-by: Pasta <pasta@dashboost.org>
Signed-off-by: pasta <pasta@dashboost.org>
Signed-off-by: pasta <pasta@dashboost.org>
Signed-off-by: pasta <pasta@dashboost.org>
@UdjinM6

UdjinM6 commented Jun 10, 2020

Copy link
Copy Markdown

A couple more fixes are needed imo, pls see https://github.com/UdjinM6/dash/commits/pr3488

@PastaPastaPasta

Copy link
Copy Markdown
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

@UdjinM6 UdjinM6 left a comment

Copy link
Copy Markdown

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

@xdustinface xdustinface left a comment

Copy link
Copy Markdown

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

forro68 commented Jun 26, 2020

Copy link
Copy Markdown

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
Copy Markdown
Member Author

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

@UdjinM6

UdjinM6 commented Jun 27, 2020

Copy link
Copy Markdown

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 <pasta@dashboost.org>

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

Signed-off-by: Pasta <pasta@dashboost.org>

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

Signed-off-by: Pasta <pasta@dashboost.org>

* litemode must be off for MNs cont

Signed-off-by: Pasta <pasta@dashboost.org>

* change litemode help text

Signed-off-by: Pasta <pasta@dashboost.org>

* don't skip MN sync in litemode

Signed-off-by: Pasta <pasta@dashboost.org>

* drop fLiteMode in bitcoingui.cpp

Signed-off-by: Pasta <pasta@dashboost.org>

* skip governance sync in litemode

Signed-off-by: pasta <pasta@dashboost.org>

* remove fLiteMode in walletview.cpp

Signed-off-by: pasta <pasta@dashboost.org>

* add back

Signed-off-by: pasta <pasta@dashboost.org>

* fix comments

* fix cache loading

* fix scheduled tasks

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

Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
@PastaPastaPasta

Copy link
Copy Markdown
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 <pasta@dashboost.org>

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

Signed-off-by: Pasta <pasta@dashboost.org>

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

Signed-off-by: Pasta <pasta@dashboost.org>

* litemode must be off for MNs cont

Signed-off-by: Pasta <pasta@dashboost.org>

* change litemode help text

Signed-off-by: Pasta <pasta@dashboost.org>

* don't skip MN sync in litemode

Signed-off-by: Pasta <pasta@dashboost.org>

* drop fLiteMode in bitcoingui.cpp

Signed-off-by: Pasta <pasta@dashboost.org>

* skip governance sync in litemode

Signed-off-by: pasta <pasta@dashboost.org>

* remove fLiteMode in walletview.cpp

Signed-off-by: pasta <pasta@dashboost.org>

* add back

Signed-off-by: pasta <pasta@dashboost.org>

* fix comments

* fix cache loading

* fix scheduled tasks

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

Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
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