Releases: oliverw/miningcore
Release 0.20
Changes
- Don't enforce daemon owning pool wallet if payment-processing is disabled
- Persistence configuration is optional if payment-processing is disabled and the pool is in relay-mode
- Share relay config
- Dummy persistence
- Bitcoin ZMQ block notify topic is now configurable
- Share relay connect option
- BTCP explorer links
- ZCash & BTCP PowLimit configuration
- Block effort calc
- Fix BTCP hashrate hack
- Blockinfo API results
- Increase write throuput of share db inserts
- Monero double transfer RPC failure response handling
Database Migration
ALTER TABLE shares ADD source TEXT NULL;
ALTER TABLE blocks ADD source TEXT NULL;
ALTER TABLE blocks ADD hash TEXT NULL;
ALTER TABLE poolstats ADD sharespersecond DOUBLE PRECISION NOT NULL DEFAULT 0;
Release 19
Changes
- BalanceChange API
- Fix ZCash shielding for coins other than ZCash (ZCL, ZEN, BTCP etc)
- Fixed t-addr balance calculation for ShieldCoinbaseEmulatedAsync (ZCL, ZEN, BTCP etc)
- Support multiple external stratums
- Share relay (instead of persisting shares to the database, relay them using ZMQ to a master pool - useful for clustering)
Breaking Changes
- Pool configuration option
externalStratum
has been removed - Pool configuration options
externalStratumZmqSocket
andexternalStratumZmqTopic
have been replaced by an array of objects:
"externalStratums": [{
"url": "tcp://localhost:13032",
"topic": "xmr1"
}]
Release 18
- Payment Processing crash fix (invalid tablename balances_changes)
- Drop Id column for shares table
- Add index on table balance_changes
- API Hashrate case consolidation
Database Migration
Miningcore needs to be stopped briefly for the following change:
ALTER TABLE shares DROP id;
Other migrations:
CREATE INDEX IDX_BALANCE_CHANGES_POOL_ADDRESS_CREATED on balance_changes(poolid, address, created desc);
Release 0.17
Changes
- Ignore redundant ZMQ block hash updates for the same block from multiple daemons
- Disable stratum method suggest_difficulty for now
- Job management change
- Runtime info logging
- Fixed GBX, CRC
- Do not return stale miner performance stats via API
- VarDiff maxDelta support
- Validate Monero PaymentID on login
- Do not send work until login is complete. Fixes #204
- Blake2s hash integration
- Support for Legacy Bitcoin daemons. Fixes #77, #119
- Verge (XVG) integration
- Neoscrypt fix
- Legacy daemon fix
- improved POW/POS check
- Logging of block submissions
- BlockRewardMultiplier
- Increase Pg Command Timeout
- Added payment audit-trail
- Fixes #194, #216
Database Migration
DROP INDEX IDX_SHARES_POOL_BLOCK;
CREATE INDEX IDX_SHARES_POOL_MINER_DIFFICULTY on shares(poolid, miner, difficulty);
ALTER TABLE blocks ADD miner TEXT NULL;
CREATE TABLE balance_changes
(
id BIGSERIAL NOT NULL PRIMARY KEY,
poolid TEXT NOT NULL,
coin TEXT NOT NULL,
address TEXT NOT NULL,
amount decimal(28,12) NOT NULL DEFAULT 0,
usage TEXT NULL,
created TIMESTAMP NOT NULL
);
Release 0.16
Changes
- Made RPC polling optional
- Update configuration examples to be closer to real world usage
- Added no RPC polling config example
- Don't expose payment processing config extension data via API. Fixes #103
- Keep extra data in api result but sanitize it first
- Increase PG command timeout
- Add support for ZEN and XVG
- Return Coin POW Algorithm in API results
- Expose pool total miner earnings via API
- Improved LTC block explorer links
- Neoscrypt update
- Neoscrypt tests
- Support GBX, CRC and XVG (Verge)
- Don't tie ZMQ block notify to a single address. Fixes #183
- X17 hash integration
- Drop paged retries from Monero Payments as those won't work anyway when transfer_split fails.
- Support Verge X17 variant
- Added support for MaxActiveJobs Bitcoin Pool extra config
Configuration Changes
- The pool configuration parameter
zmqBlockNotifySocket
introduced in the previous release, has been moved to the daemon configuration element to enable receiving block update notifications from multiple daemons as a single unified notification stream.
Release 0.15
Changes
- Support ZMQ block notify for Bitcoin family. Fixes #151.
- Adjust Lyra2v2 Hashrate multiplier. Fixes #168
- Made RPC polling optional
- Updated configuration examples to be closer to real world usage
- Added no-RPC-polling config example
Notes
We now support streaming Block Notifications via ZeroMQ messaging from Bitcoin Family daemons. This greatly reduces the latency for detecting new blocks, while eliminating the need for aggressively fast polling for updates. This is achieved by the new configuration option zmqBlockNotifySocket
at the pool-configuration root level. The value of this option is a string that should match the value of the -zmqpubhashblock
parameter passed to the coin daemon.
Release 0.14
Changes
- Log and record miner submitting block solution
- Fix top miner query
- Don't expose disabled pools via API
- External socket binding
- API Fix
- Monero: address validation fixes
- Monero: More Monero integrated address fixes
- Monero: Better handling for invalid payment Ids
- Monero: Payout-batch address fix
- Monero: Actually detect network type in payout handler
Database Migration
update minerstats set worker = '' where worker is null;
alter table minerstats alter column worker SET NOT NULL;
alter table blocks add miner TEXT NULL;
Release 0.13
This releases focuses on the long promised API enhancements. Please refer to this page for the latest documentation.
Changes
- Package update
- Switch back to dedicated loop thread per stratum port instead of per stratum
- Maintain maximum hashrate precision as long as possible.
- Min window adjustment
- Miner payments API - Improves #27
- Pool Top Miners API - Improves #27
- API no longer requires on a pool to be running to respond. It just needs to configured - Improves #27
- Prevent startup exception for externals
- Fix last block time
- Miner performance API for per-worker hashrate graphs (daily, monthly) - Improves #27
- Hashrate calculation safeguards
- Various StatsRepository fixes
Database Migration
ALTER TABLE poolstats ADD networkhashrate DOUBLE PRECISION NOT NULL DEFAULT 0;
ALTER TABLE poolstats ADD networkdifficulty DOUBLE PRECISION NOT NULL DEFAULT 0;
ALTER TABLE poolstats ADD lastnetworkblocktime TIMESTAMP NULL;
ALTER TABLE poolstats ADD blockheight BIGINT NOT NULL DEFAULT 0;
ALTER TABLE poolstats ADD connectedpeers INT NOT NULL DEFAULT 0;
CREATE INDEX IDX_MINERSTATS_POOL_MINER_CREATED_DAY on minerstats(poolid, miner, date_trunc('day',created));
Release 0.12
Release 0.11
Changes
- Log block height for balance changes
- Fix share traversal during payout calculations
- Log one address per line during payout calculations
- Compute miner/worker hashrates from database instead of buffering shares in memory
- PPLNS fixes
- ZCash shield coinbase fix
Database migration
CREATE TABLE minerstats
(
id BIGSERIAL NOT NULL PRIMARY KEY,
poolid TEXT NOT NULL,
miner TEXT NOT NULL,
worker TEXT NULL,
hashrate DOUBLE PRECISION NOT NULL DEFAULT 0,
sharespersecond DOUBLE PRECISION NOT NULL DEFAULT 0,
created TIMESTAMP NOT NULL
);
CREATE INDEX IDX_MINERSTATS_POOL_CREATED on minerstats(poolid, created);
CREATE INDEX IDX_MINERSTATS_POOL_MINER_CREATED on minerstats(poolid, miner, created);
CREATE INDEX IDX_MINERSTATS_POOL_MINER_CREATED_HOUR on minerstats(poolid, miner, date_trunc('hour',created));