Small update to send all work to be done up to the Master thread. This should help deal with the fact that shares must be sent by one of the nodes that handles data.

This commit is contained in:
Alexander Blair 2017-07-01 20:38:16 -07:00
parent c492925dc9
commit df94faab9b
2 changed files with 9 additions and 7 deletions

View file

@ -90,6 +90,11 @@ function messageHandler(message) {
minerCount[message.data] += 1;
}
break;
case 'sendRemote':
if (cluster.isMaster) {
global.database.sendQueue.push(Buffer.from(message.data, 'hex'));
}
break;
}
}

View file

@ -20,7 +20,7 @@ function Database() {
function () {
callback();
});
}, 32);
}, 128);
this.storeShare = function (blockId, shareData) {
let wsData = global.protos.WSData.encode({
@ -29,8 +29,7 @@ function Database() {
msg: shareData,
exInt: blockId
});
this.sendQueue.push({body: wsData}, function () {
});
process.send({type: 'sendRemote', body: wsData.toString('hex')});
};
this.storeBlock = function (blockId, blockData) {
@ -40,8 +39,7 @@ function Database() {
msg: blockData,
exInt: blockId
});
this.sendQueue.push({body: wsData}, function () {
});
process.send({type: 'sendRemote', body: wsData.toString('hex')});
};
this.storeInvalidShare = function (minerData) {
@ -51,8 +49,7 @@ function Database() {
msg: minerData,
exInt: 1
});
this.sendQueue.push({body: wsData}, function () {
});
process.send({type: 'sendRemote', body: wsData.toString('hex')});
};
this.initEnv = function(){