Skip to content

Pool and JDC mishandle extranonce allocator exhaustion #730

Description

@GitGab19

While working on #729, I found out some similar issues on JDC and Pool, which I prefer to tackle with a specific PR.

Problem

Pool and JDC handle ExtranonceAllocator failures inconsistently:

  • allocate_standard() failures trigger a global application shutdown.
  • allocate_extended() reports every failure as min-extranonce-size-too-large, including CapacityExhausted.

This affects both applications, although JDC’s limit (65,536 channels) is lower than Pool’s (16,777,216).

Expected behavior

Distinguish InvalidRollableSize from CapacityExhausted, reject only the affected channel request with an appropriate OpenMiningChannelError, and keep existing connections running.

Add regression tests for both Pool and JDC.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status
Todo 📝
Status
Todo 📝

Relationships

None yet

Development

No branches or pull requests

Issue actions