247 Commits (51670edb611b5390abfbd0e8a0e200848e8f261f)

Author SHA1 Message Date
Con Kolivas a98d510f9f Add subproxy information to generator messages where appropriate 10 years ago
Con Kolivas d61ba33e69 Set subproxy count and subid under lock to prevent clashes and ensure the subproxy inherits the parent's id 10 years ago
Con Kolivas 7adf0f1c7e All reconnects will discard the original proxy instance data so shut down the associated send thread as well as the receive and remove unnecessary extra flags 10 years ago
Con Kolivas edbe863a26 Only add the parent proxy to the subproxy list once 10 years ago
Con Kolivas 5fb4e8d545 Set the parent proxy to the new instance on a reconnect 10 years ago
Con Kolivas fe6fe5bac2 Remove the now unused current_notify 10 years ago
Con Kolivas 39f2839252 Send notify as soon as a proxy receives it instead of trying to look it up later 10 years ago
Con Kolivas 02f31fccc3 Add reconnect proxies to the hashlist using hash_replace in case it has already been removed, and add it to its own subproxy list 10 years ago
Con Kolivas b4bf867269 Always disable subproxies on failure to send message 10 years ago
Con Kolivas a2131e438d Drop subproxies when parent proxy is invalidated 10 years ago
Con Kolivas ffdac57b0e Decrease failback time to 30 seconds on proxy 10 years ago
Con Kolivas 4d5ef2a76a Don't try to recruit extra subproxies on initial connect 10 years ago
Con Kolivas b7680263aa Set subproxies to disabled when dropping them 10 years ago
Con Kolivas 0fc4507bf3 Add more info to failed to authorise 10 years ago
Con Kolivas 7af4b89138 Demote json_result decode failed message to notice level 10 years ago
Con Kolivas 566d6c656e Send correct subproxy id to stratifier 10 years ago
Con Kolivas 413c73bc33 Drop the child subproxies if the parent proxy is not alive 10 years ago
Con Kolivas 37b6406e0e Set share response to true even if we don't find the matching share 10 years ago
Con Kolivas 8476d12876 Fix failover of parent proxy 10 years ago
Con Kolivas d9ea42bdc7 Disable subproxies that are given a reconnect message, allowing more subproxies to be recruited by parent's reconnect if need be instead 10 years ago
Con Kolivas 31b0e4df67 Only check for existence of current proxy when switching, not best which may have already been set to the alive proxy 10 years ago
Con Kolivas 008c9a32d9 Give subproxies their own hashlist to allow them to be on two hashtables 10 years ago
Con Kolivas bef6bd57db Make best_proxy non blocking compared to wait_best_proxy 10 years ago
Con Kolivas ca8d50280d Only set alive to false on parent proxy failing 10 years ago
Con Kolivas d0f557bbf8 Handle reconnect message differently for parent proxy than child subproxies 10 years ago
Con Kolivas 1e7a786915 Fix misuse of function 10 years ago
Con Kolivas 5ce95d99a7 Use the parent proxy as one of the subproxies as upstream pools may disconnect idle clients and the parent determines the children's activities 10 years ago
Con Kolivas 0092e0982c Create a helper function for determining parent proxy 10 years ago
Con Kolivas 81370d2c87 Reset variables that will affect functioning of recycled proxies 10 years ago
Con Kolivas 3d44a13470 Store dead proxy instances to be recycled if possible 10 years ago
Con Kolivas b59760bb4a Disable subproxies as they die, moving them to a dead list instead of trying to reuse them and recruit fresh proxies, disconnecting clients connected to them 10 years ago
Con Kolivas ed0d20d216 Use json_getdel_int helper in generator 10 years ago
Con Kolivas 31a5e3d5ce Delete the subproxy entry in the share after sending it to the proxy send thread 10 years ago
Con Kolivas 2d35d0c679 Parse reconnect differently for subproxies than master proxies 10 years ago
Con Kolivas c43d89275a Fix various logic errors dealing with upstream proxy disconnects 10 years ago
Con Kolivas 9edfbc8790 Don't send proxy diff till it's set yet 10 years ago
Con Kolivas b13446e387 Send proxy subscription to stratifier as soon as we have it 10 years ago
Con Kolivas e287feede0 Send only the parent proxy id from the generator to the stratifier 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 27faf4d1c4 Fix proxy epfd not being set 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 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 c92cbd6f62 Handle submitting upstream shares properly with subproxies having their own share tables 10 years ago
Con Kolivas 575ac70de8 Store all notifies in the generator in the parent proxy list and extract the subproxy details from share submission to submit upstream to the right connection 10 years ago
Con Kolivas a006dab4ae Do not use master proxy for work, using the first subproxy instance for now, sending the id with it to the stratifier 10 years ago
Con Kolivas 04d43b3afb Recruit extra subproxies to ensure at least 42 client headroom, receiving data from correct socket in proxyrecv 10 years ago
Con Kolivas fe4a25f861 Create rudimentary subproxy structures, moving proxy receives to epoll in order to receive from multiple connections upstream 10 years ago
Con Kolivas 1c1cb445ef Don't send subscriptions to the stratifier in passthrough mode 10 years ago
Con Kolivas 5bff2819da Send notify from each proxy as soon as we receive it 10 years ago
Con Kolivas 26c890c291 Send the diff from the proxy instance as soon as we get it and differentiate which proxy it comes from 10 years ago