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

enablevoting=0 in dcrwallet conf #520

Merged
merged 1 commit into from Sep 12, 2019
Merged

Conversation

jholdstock
Copy link
Member

No description provided.

stakepoold does the voting
@JoeGruffins
Copy link
Member

Is the redundancy a problem?

@jholdstock
Copy link
Member Author

The problem is that enablevoting=1 will cause dcrwallet to vote without respecting the users votebits. stakepoold does the voting with the correct votebits.

@JoeGruffins
Copy link
Member

That's a pretty big deal.

@itswisdomagain
Copy link
Member

itswisdomagain commented Sep 11, 2019

@jholdstock Is there a way to ensure at runtime that this dcrwallet config value is correctly set? It could be so easy to miss resulting in the issue you described above.

Or use gRPC to set dcrwallet voting instructions when a user updates his voting prefs. https://github.com/decred/dcrwallet/blob/master/rpc/documentation/api.md#setvotechoices.

I'm leaning towards the second option, and even discontinuing voting with stakepoold. dcrwallet is needed to generate the vote tx afterall, so stakepoold cannot even vote if dcrwallet is down. Why not just let dcrwallet handle it all?

@JoeGruffins
Copy link
Member

@itswisdomagain can there be different votes for different tickets that way?

@itswisdomagain
Copy link
Member

Missed that @JoeGruffins. It cannot, currently.

@itswisdomagain can there be different votes for different tickets that way?

So I guess we look for a way to ensure at runtime that the dcrwallet enablevoting config value is correctly set.

@JoeGruffins
Copy link
Member

@chappjc
Copy link
Member

chappjc commented Sep 12, 2019

The problem is that enablevoting=1 will cause dcrwallet to vote without respecting the users votebits. stakepoold does the voting with the correct votebits.

In addition to the possibility of improper votebits, one idea of having stakepoold create the vote (using dcrwallet to sign it) was to avoid relying on dcrwallet to track stakepool user tickets. In fact, stakepooluserinfo is one of those things that dcrwallet should strive to eliminate, along with all other stake pool realted stuff.

@chappjc
Copy link
Member

chappjc commented Sep 12, 2019

BTW, I'm extremely surprised that the sample didn't already have enablevoting=0.

@dajohi dajohi merged commit 89df28a into decred:master Sep 12, 2019
girino added a commit to girino/dcrstakepool that referenced this pull request Sep 19, 2019
* commit '0cec13529c159059eff39dc6eb5b69cde5c1bd2d':
  Add 1.2.0 release note. (decred#509)
  multi: cleanup (decred#527)
  Ensure low fee tickets are detected upon maturation. (decred#524)
  Add RPC automatic reconnections (decred#510)
  Prevent unnecessary wallet rescans. (decred#519)
  enablevoting=0 in dcrwallet conf (decred#520)
  stakepoold: Stop if wallet voting is enabled (decred#523)
jyap808 pushed a commit to ubiq/dcrstakepool that referenced this pull request Dec 16, 2019
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.

None yet

5 participants