Repository navigation
c2pool v0.2.12.4
c2pool v0.2.12.4
LTC hotfix on top of v0.2.12.3. Every c2pool-ltc node should upgrade, one node at a time (see "Upgrade order" below).
LTC: a restarted node reconnects to the share chain
After a restart, a node could stay on an old share for hours and never reach the live share chain. Three bugs added up:
- It reloaded only part of its saved share chain. The store's height index kept one share per height and lost entries when fork shares were pruned. A restart reloaded only about a quarter of the saved window, in fragments.
- It asked the wrong peer. A missing share was requested from the peer that first announced it, over and over, even when other connected peers had it.
- Old nodes refuse some shares. Nodes older than v0.2.12.3 do not send shares they marked as rejected (fixed on the serving side in v0.2.12.3). This left gaps that a restarted node could not fill.
What changes:
- A restart reloads the whole saved window, fork shares included. On a copy of a production LTC store: 17,296 shares reloaded, the full window, where v0.2.12.3 reloaded 4,363.
- A missing share is requested from every connected peer in turn before the node waits and retries.
- A share request that arrives while the node is busy waits up to 2 seconds for an answer instead of getting an empty reply.
Share store (all coins)
The share store's height index is rebuilt once on the first start of this version, and again whenever an older version has written to the store. On the stores we measured this took under 0.2 s. The same fix makes DASH and the other coins reload their saved share chain fully after a restart. On a copy of a DASH store, the unbroken run of shares back from the tip went from 7 to 8,642.
Downgrading: no store action is needed. An older version still reads the store, and this version repairs the index the next time it starts. Do not edit the store's dirty flag by hand.
LTC: merged payouts on the dashboard
The merged payout list shows whether each merged address was given by the miner or derived from the miner's LTC address.
macOS
macOS packages are universal again: one binary for Apple Silicon and Intel Macs, minimum macOS 26.0. They are built on an Apple Silicon build host, which compiles the Intel half directly.
Upgrade order
Restart one node at a time. Wait until each one is back on the live share chain, with the same best share as its peers, before you restart the next.
Known issue
--soloand--custodialremain disabled.
Verify the download
SHA256SUMS is signed with key 99556F8DE6AD66057A1A10EC50AB1379285EFE76:
gpg --verify SHA256SUMS.asc SHA256SUMS
sha256sum -c --ignore-missing SHA256SUMS