Update pool.js

removed haven breaking changes
This commit is contained in:
XMR Miners Club
2021-01-03 21:08:06 -05:00
committed by GitHub
parent ff33d02b86
commit 3f851c468d

View File

@@ -42,9 +42,6 @@ let cnAlgorithm = config.cnAlgorithm || "cryptonight";
let cnVariant = config.cnVariant || 0;
let cnBlobType = config.cnBlobType || 0;
// HBD - check for HAVEN coin type
let bUseHaven = (config.coin == "haven");
let cryptoNight;
if (!cnHashing || !cnHashing[cnAlgorithm]) {
log('error', logSystem, 'Invalid cryptonight algorithm: %s', [cnAlgorithm]);
@@ -61,8 +58,7 @@ let connectedMiners = {};
// Get merged mining tag reseved space size
let POOL_NONCE_SIZE = 16 + 1; // +1 for old XMR/new TRTL bugs
let EXTRA_NONCE_TEMPLATE = "02" + POOL_NONCE_SIZE.toString(16) + "00".repeat(POOL_NONCE_SIZE);
let POOL_NONCE_MM_SIZE = POOL_NONCE_SIZE +
bUseHaven ? utils.havenUtil.get_merged_mining_nonce_size() : utils.cnUtil.get_merged_mining_nonce_size();
let POOL_NONCE_MM_SIZE = POOL_NONCE_SIZE + utils.cnUtil.get_merged_mining_nonce_size();
let EXTRA_NONCE_NO_CHILD_TEMPLATE = "02" + POOL_NONCE_MM_SIZE.toString(16) + "00".repeat(POOL_NONCE_MM_SIZE);
let mergedMining = config.poolServer.mergedMining && (Array.isArray(config.childPools) && config.childPools.length > 0)
@@ -241,7 +237,7 @@ function BlockTemplate (template, parent, indexOfChildPool) {
let blob = this.blocktemplate_blob;
this.buffer = Buffer.from(blob, 'hex');
let template_hex = EXTRA_NONCE_TEMPLATE;
if (parent && mergedMining && !bUseHaven) {
if (parent && mergedMining) {
if (currentChildBlockTemplate[indexOfChildPool]) {
this.childBlockTemplate = currentChildBlockTemplate[indexOfChildPool];
this.buffer = utils.cnUtil.construct_mm_parent_block_blob(this.buffer, cnBlobType, this.childBlockTemplate.buffer);
@@ -280,14 +276,10 @@ function BlockTemplate (template, parent, indexOfChildPool) {
BlockTemplate.prototype = {
nextBlob: function (index) {
this.buffer.writeUInt32BE(++this.extraNonce, this.reserveOffset);
if (!bUseHaven && mergedMining && this.childBlockTemplate) {
if (mergedMining && this.childBlockTemplate) {
return utils.cnUtil.convert_blob(this.buffer, cnBlobType, this.childBlockTemplate.buffer)
.toString('hex')
}
if (bUseHaven)
return utils.havenUtil.convert_blob(this.buffer)
.toString('hex');
else
return utils.cnUtil.convert_blob(this.buffer, cnBlobType)
.toString('hex');
},
@@ -1166,9 +1158,7 @@ function getShareBuffer (miner, job, blockTemplate, params) {
}
try {
let shareBuffer = (bUseHaven)
? utils.havenUtil.construct_block_blob(template, Buffer.from(nonce, 'hex'))
: utils.cnUtil.construct_block_blob(template, Buffer.from(nonce, 'hex'), cnBlobType);
let shareBuffer = utils.cnUtil.construct_block_blob(template, Buffer.from(nonce, 'hex'), cnBlobType);
return shareBuffer;
} catch (e) {
log('error', logSystem, "Can't get share buffer with nonce %s from %s@%s: %s", [nonce, miner.login, miner.ip, e]);
@@ -1192,9 +1182,7 @@ function processShare (miner, job, blockTemplate, params) {
hash = Buffer.from(resultHash, 'hex');
shareType = 'trusted';
} else {
let convertedBlob = (bUseHaven)
? utils.havenUtil.convert_blob(shareBuffer)
: utils.cnUtil.convert_blob(shareBuffer, cnBlobType);
let convertedBlob = utils.cnUtil.convert_blob(shareBuffer, cnBlobType);
let hard_fork_version = convertedBlob[0];
if (blockTemplate.isRandomX) {
@@ -1225,9 +1213,8 @@ function processShare (miner, job, blockTemplate, params) {
if (error) {
log('error', logSystem, 'Error submitting block at height %d from %s@%s, share type: "%s" - %j', [job.height, miner.login, miner.ip, shareType, error]);
} else {
let blockFastHash = (bUseHaven)
? utils.havenUtil.get_block_id(shareBuffer).toString('hex')
: utils.cnUtil.get_block_id(shareBuffer, cnBlobType).toString('hex');
let blockFastHash = utils.cnUtil.get_block_id(shareBuffer, cnBlobType)
.toString('hex');
log('info', logSystem,
'Block %s found at height %d by miner %s@%s - submit result: %j',
[blockFastHash.substr(0, 6), job.height, miner.login, miner.ip, result]
@@ -1248,7 +1235,7 @@ function processShare (miner, job, blockTemplate, params) {
var childBlockTemplate = blockTemplate.childBlockTemplate;
if (childBlockTemplate) {
if (!bUseHaven && mergedMining) {
if (mergedMining) {
let pool = config.childPools[miner.activeChildPool]
if (hashDiff.ge(childBlockTemplate.difficulty)) {
let mergedBuffer = null