799 Commits (2c1944534be2c523630aa2a64a9e71a2723484ec)

Author SHA1 Message Date
Con Kolivas 631467ff70 Use a linked list for retired proxies in case they have the same id as a previously retired one 10 years ago
Con Kolivas c093b4a06f Keep track of the number of clients bound to each proxy 10 years ago
Con Kolivas 42f14a9536 Add full lock tracking for mutexes and rwlocks 10 years ago
Con Kolivas 9cbe225c4d Reconnect backup clients on stratum notify if they're not already on the current proxy 10 years ago
Con Kolivas d6f0cfb210 Break out of searching for a proxy if the best has headroom 10 years ago
Con Kolivas dba4f02fae Find any subproxy with headroom to take more clients if we do not have enough upstream connections yet to service new clients 10 years ago
Con Kolivas 9dad217562 Switch the current proxy if we generate a replacement one 10 years ago
Con Kolivas d1fe21601e Don't create subproxies except when appropriate 10 years ago
Con Kolivas fc26ec2ddc Differentiate proxy_by_id for when we only want existing entries 10 years ago
Con Kolivas 2a809faeb4 Change block hash update message according to proxy/pool 10 years ago
Con Kolivas 4fe614ea7d Don't try to allocate clients to dead subproxies in the stratifier 10 years ago
Con Kolivas 79cca5a6d5 Remove replaced proxies from the main hashlist and store them in an old proxy hashlist upon a new subscription 10 years ago
Con Kolivas cb1c58846b Demote update notices for subproxies 10 years ago
Con Kolivas a1eabf7305 Send a dead proxy notification to the stratifier when we disable a subproxy to switch clients on it 10 years ago
Con Kolivas c295d6a8d4 Do a soft failover to backup proxies, not disconnecting them unless the upstream subproxy no longer exists, but a hard failover to higher priority proxies 10 years ago
Con Kolivas e24b6846d8 Count stats from ckp sdata to show proper proxy hashrate 10 years ago
Con Kolivas 835ff395c2 Reset client and enonce1u count on resubscribe 10 years ago
Con Kolivas 395d1277a7 Set notify_id on all proxies in case we switch later to them with setproxy 10 years ago
Con Kolivas 051ee7278a Iterate over correct hashtable with ckp sdata for stratum broadcasts 10 years ago
Con Kolivas 26ca36feb1 Set reconnect on both notify id fix and setproxy when we have enough information 10 years ago
Con Kolivas a7da93981e Determine whether we need to reconnect clients based on the parent proxy's notify id which is reset on each subscribe 10 years ago
Con Kolivas 5dc3f9cb22 Only issue reconnect when the parent pool has set its notified flag 10 years ago
Con Kolivas 5cb12347a7 Add parent proxy as a subproxy in stratifier 10 years ago
Con Kolivas c8025958f9 Add notify and diff subid details 10 years ago
Con Kolivas 371b59f452 Use a different hashlist for the subproxies in the stratifier to avoid hashlist clash 10 years ago
Con Kolivas d0f557bbf8 Handle reconnect message differently for parent proxy than child subproxies 10 years ago
Con Kolivas aa153ba742 Differentiate pong from other spurious messages from clients 10 years ago
Con Kolivas df1465f275 Use msg_id variable for clarity 10 years ago
Con Kolivas 338cc49c7e Add verbose notify message 10 years ago
Con Kolivas 9b04f81666 Set correct variable in update_diff 10 years ago
Con Kolivas f15fbdbc70 Receive diff from the upstream proxy and add share submission to the correct psend list 10 years ago
Con Kolivas 955bbe6977 Use the client's sdata to associate correct share submissions with the upstream proxy 10 years ago
Con Kolivas 6a21a67c1e Use client sdata with update_client call 10 years ago
Con Kolivas 319d0943fc Update diff on all stratifier data but send diff only to clients bound to the current subproxy 10 years ago
Con Kolivas bcd499bf31 Assign the client subproxy data in new_enonce1 10 years ago
Con Kolivas c872ce9de8 Store the proxy and subproxy id only in clients and sort subproxies by subid to avoid confusion 10 years ago
Con Kolivas dc293beb9c Separate delivery of messages by ckpool sdata and per proxy sdata 10 years ago
Con Kolivas dd1dae4ae3 Send the relevant sdata to be used by new_enonce1 10 years ago
Con Kolivas 7763b49c2e Allow stratifier to choose the best subproxy to attach new users to and request recruitment of more subproxies when the headroom for more clients is low 10 years ago
Con Kolivas 6822282672 Generate stratifier data per subproxy instead of per proxy since they'll have unique workbases 10 years ago
Con Kolivas d62483fbd2 Workbases always exists by the time we reach the point we can set the enonce2varlen 10 years ago
Con Kolivas 03712fe2d7 Broadcast data according to the sdata it belongs to 10 years ago
Con Kolivas b1f92414c5 Store which sdata each client is bound to 10 years ago
Con Kolivas e360a9842b Add the workbase to each unique sdata as required 10 years ago
Con Kolivas ba910251da Choose the sdata to use by subproxy 10 years ago
Con Kolivas 1f83be877d Send subproxy id when setting proxy at stratifier and set the current proxy to the subproxy instead of the master proxy 10 years ago
Con Kolivas b77027b09c Create a unique stratifer data structure per subproxy 10 years ago
Con Kolivas d05db855ff Create infrastructure for a list of subproxies per proxy and generating them 10 years ago
Con Kolivas 08e47d28cf Give each proxy an enonce1 union and cap the handout of enonce1 values without repeating, assuming we will recruit more proxied connections upstream to compensate 10 years ago
Con Kolivas e986c04c68 Fix non proxy mode breakage 10 years ago