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

Do not perform get_transactions (stratum) every time #186

Closed
slush0 opened this issue Dec 2, 2012 · 4 comments
Assignees
Milestone

Comments

@slush0
Copy link

@slush0 slush0 commented Dec 2, 2012

In current implementation, bfgminer's stratum implementation calls mining.get_transactions() for every received job. There's really no reason to do this and hundreds of miners asking for complete list of transactions are just wasting server's resources.

Please consider to implement checking for only some jobs. There's practically no chance how to abuse hashpower by the poolop even if miner checks tenth job or even less.

@ghost ghost assigned luke-jr Dec 4, 2012
@luke-jr

This comment has been minimized.

Copy link
Owner

@luke-jr luke-jr commented Dec 4, 2012

Implemented in 2708f34

@luke-jr luke-jr closed this Dec 4, 2012
@luke-jr luke-jr reopened this Dec 4, 2012
@luke-jr luke-jr closed this Dec 4, 2012
@slush0

This comment has been minimized.

Copy link
Author

@slush0 slush0 commented Dec 4, 2012

Hm, this really didn't help, as it is just optional argument and default behaviour is "fuck up pool as much as possible" :-/.

This is exactly the reason why other pool ops fear to implement get_transactions to their pools. With so aggressive policy, you're only increasing pool traffic. By making this less abusive, maybe others will implement it.

@luke-jr

This comment has been minimized.

Copy link
Owner

@luke-jr luke-jr commented Dec 4, 2012

Sending transactions shouldn't mess up the pool period. That's just a sign of a poorly run pool.

@slush0

This comment has been minimized.

Copy link
Author

@slush0 slush0 commented Dec 4, 2012

You didn't sleep well today, right? Please be constructive.

Sending transactions for every job broadcast is absolute overkill, and it sends memory pool N times every 30 seconds (where N is amount of connected bfgminers).

Please do your checks in less invasive way, otherwise there won't be any pool providing such API. If you're not going to modify default behaviour, I'll disable get_transaction on my pool as well. Currently ~20 bfgminers are doing higher pool load than the rest of 2000 connected miners.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.