Handle SetCustomMiningJobError in translator and JD mining upstream (#142) - #282
Open
ANAMASGARD wants to merge 1 commit into
Open
Handle SetCustomMiningJobError in translator and JD mining upstream (#142)#282ANAMASGARD wants to merge 1 commit into
ANAMASGARD wants to merge 1 commit into
Conversation
Log pool rejection reasons, avoid translator panic on custom job errors, and clean up JD request_id mappings while unblocking the custom-job wait flag. Fixes dmnd-pool#142 Signed-off-by: Gaurav Chaudhary <chaudharygaurav2004@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
unimplemented!()inhandle_set_custom_mining_job_errorwith structured error logging andOk(SendTo::None(None)), preventing process panic when the pool rejects token-updateSetCustomMiningJobrequests.SetCustomMiningJobError, log the rejection reason, clear the pendingrequest_id -> template_idmapping viatake_template_id, and setIS_CUSTOM_JOB_SETso the job declarator is not blocked for up to 120s.SetCustomMiningJobErrorin the translatorparse_incomingtodo!()arm (consistent withSubmitSharesError); fix success-handler log typo (SetupConnectionSuccess→SetCustomMiningJobSuccess).Closes #142
Changes
src/translator/upstream/upstream.rsparse_incomingcleanup + unit testsrc/jd_client/mining_upstream/upstream.rsTest plan
cargo buildcargo test set_custom_mining_job_errorcargo test(81 passed, 2 ignored)What the tests prove
translator::upstream::upstream::tests::set_custom_mining_job_error_does_not_panicOk(SendTo::None(None))without panickingjd_client::mining_upstream::upstream::tests::set_custom_mining_job_error_clears_request_mappingrequest_idmapping removed;IS_CUSTOM_JOB_SET == true