@@ -445,15 +445,17 @@ function balanceWorkers(){
445445 for ( let minerID in activeWorkers [ workerID ] ) {
446446 if ( activeWorkers [ workerID ] . hasOwnProperty ( minerID ) ) {
447447 let miner = activeWorkers [ workerID ] [ minerID ] ;
448- let minerCoin = miner . coin ;
449- if ( ! minerStates . hasOwnProperty ( minerCoin ) ) {
450- minerStates [ minerCoin ] = {
451- hashrate : 0
452- } ;
453- }
454- minerStates [ minerCoin ] . hashrate += miner . avgSpeed ;
455- poolStates [ minerCoin ] [ miner . pool ] . hashrate += miner . avgSpeed ;
456- poolStates [ minerCoin ] [ miner . pool ] . miners [ `${ workerID } _${ minerID } ` ] = miner . avgSpeed ;
448+ try {
449+ let minerCoin = miner . coin ;
450+ if ( ! minerStates . hasOwnProperty ( minerCoin ) ) {
451+ minerStates [ minerCoin ] = {
452+ hashrate : 0
453+ } ;
454+ }
455+ minerStates [ minerCoin ] . hashrate += miner . avgSpeed ;
456+ poolStates [ minerCoin ] [ miner . pool ] . hashrate += miner . avgSpeed ;
457+ poolStates [ minerCoin ] [ miner . pool ] . miners [ `${ workerID } _${ minerID } ` ] = miner . avgSpeed ;
458+ } catch ( err ) { }
457459 }
458460 }
459461 }
@@ -590,14 +592,18 @@ function enumerateWorkerStats(){
590592 if ( activeWorkers [ poolID ] . hasOwnProperty ( workerID ) ) {
591593 let workerData = activeWorkers [ poolID ] [ workerID ] ;
592594 if ( typeof workerData !== 'undefined' ) {
593- if ( workerData . lastContact < ( ( Math . floor ( ( Date . now ( ) ) / 1000 ) - 120 ) ) ) {
595+ try {
596+ if ( workerData . lastContact < ( ( Math . floor ( ( Date . now ( ) ) / 1000 ) - 120 ) ) ) {
597+ delete activeWorkers [ poolID ] [ workerID ] ;
598+ continue ;
599+ }
600+ stats . miners += 1 ;
601+ stats . hashes += workerData . hashes ;
602+ stats . hashRate += workerData . avgSpeed ;
603+ stats . diff += workerData . diff ;
604+ } catch ( err ) {
594605 delete activeWorkers [ poolID ] [ workerID ] ;
595- continue ;
596606 }
597- stats . miners += 1 ;
598- stats . hashes += workerData . hashes ;
599- stats . hashRate += workerData . avgSpeed ;
600- stats . diff += workerData . diff ;
601607 } else {
602608 delete activeWorkers [ poolID ] [ workerID ] ;
603609 }
0 commit comments