Con Kolivas
|
3919d18260
|
Rework write path to have no potentially blocking calls and be able to send partial messages
|
10 years ago |
Con Kolivas
|
1efe7120c4
|
Use ref_client_by_id in send_client instead of open coding it
|
10 years ago |
Con Kolivas
|
ec39117a1c
|
Don't return client if it is invalid in ref_client_by_id in the connector
|
10 years ago |
Con Kolivas
|
0395dd052f
|
Use the client reference count in the connector to protect the client fd, closing it only once there are no more references to it
|
10 years ago |
Con Kolivas
|
9375362044
|
Revert "Use a unique event structure for each client added to the epoll list"
This reverts commit 8f1336986f .
Unnecessary.
|
10 years ago |
Con Kolivas
|
8f1336986f
|
Use a unique event structure for each client added to the epoll list
|
10 years ago |
Con Kolivas
|
6a159bf5dc
|
We won't get no error if we are not testing fd -1 sockets any more, and use errno for consistent parsing of socket close errors
|
10 years ago |
Con Kolivas
|
62d1ec3f8a
|
Use signal handlers from sender and receiver threads in the connector avoid needing to pthread tryjoin on every message
|
10 years ago |
Con Kolivas
|
2bde0bbe3d
|
Avoid trying to parse messages or test the client's error if their fd has already been invalidated
|
10 years ago |
Con Kolivas
|
d0f7ec7c35
|
Decrease verbosity of missing client warning in receiver, adding id number to the output
|
10 years ago |
Con Kolivas
|
6c0c7dd7c4
|
Rework parse_client_msg to use the non blocking recv return values avoiding the need for an extra wait_read_select
|
10 years ago |
Con Kolivas
|
84ca31fcca
|
Drop stratifier id when client id is not found in connector
|
10 years ago |
Con Kolivas
|
93d5760b2d
|
Set server to the passthrough server client in passthrough mode
|
10 years ago |
Con Kolivas
|
e095ba4b49
|
Mask out error 0 in socket error messages
|
10 years ago |
Con Kolivas
|
3f3dc7f4f3
|
Implement a stratum mining.term call which notifies the stratifier this client is terminating and use it to signal upstream pools when passthrough subclients have disconnected
|
10 years ago |
Con Kolivas
|
e9441f2e1a
|
Drop passthrough proxy connection from stratifier
|
10 years ago |
Con Kolivas
|
8bb50fa058
|
Process epoll read messages before hangups and errors and add more info about the type of hang up, increasing verbosity when it's an unexpected error
|
10 years ago |
Con Kolivas
|
0b96be0144
|
Use non blocking receive in parse_client_msg as we check for read readiness with wait_read_select first, and there is the unlikely event the state changes
|
10 years ago |
Con Kolivas
|
da2f62aea9
|
Pass through the downstream clients' address and server
|
10 years ago |
Con Kolivas
|
bf72ebbee6
|
Reinstate checking for zero as a return from recv for cleanly disconnected clients
|
10 years ago |
Con Kolivas
|
75d24d1d07
|
Reference clients in the epoll list by their client id to avoid double lookup and possible wrong client selection
|
10 years ago |
Con Kolivas
|
88fcb55faa
|
Revert "Check clients match in epoll loop"
This reverts commit b50f2ba86c .
Wrong
|
10 years ago |
Con Kolivas
|
b50f2ba86c
|
Check clients match in epoll loop
|
10 years ago |
Con Kolivas
|
e012108280
|
Explicitly check for EPOLLRDHUP as well
|
10 years ago |
ckolivas
|
91d2aca51f
|
Detect pollhup in wait_read_select and not through recv fail conditions
|
10 years ago |
ckolivas
|
49ce587949
|
nolinger client sockets when we're about to close them
|
10 years ago |
ckolivas
|
da20ac7f3e
|
Disable user of nolinger on client sockets
|
10 years ago |
Con Kolivas
|
cd754e98e4
|
Move connector to using unix receive queues
|
10 years ago |
Con Kolivas
|
655f82f09d
|
Remove clients from the epoll list when invalidating them to avoid a receiver event and check they still exist in their original form on getting a receiver event
|
10 years ago |
Con Kolivas
|
24d9155f62
|
Recycle client instances in the connector
|
10 years ago |
Con Kolivas
|
4c97df787d
|
Remove use of upgradeable locks in connector
|
10 years ago |
Con Kolivas
|
d4304de798
|
These weren't the droids we were looking for.
|
10 years ago |
Con Kolivas
|
66e6b1fa76
|
Unused variable
|
10 years ago |
Con Kolivas
|
d75dd5543c
|
Try async messages again
|
10 years ago |
Con Kolivas
|
6b3cd82525
|
Revert "Use async send proc as a separate thread from workqueues"
This reverts commit 7de43b1c6e .
|
10 years ago |
Con Kolivas
|
7de43b1c6e
|
Use async send proc as a separate thread from workqueues
|
10 years ago |
Con Kolivas
|
4ff3972ef0
|
Look for other clients that should have been dropped in the stratifier and inform or query the connector about them
|
10 years ago |
Con Kolivas
|
8708b36b8d
|
Use async send proc in the connector
|
10 years ago |
Con Kolivas
|
a465e47f85
|
Use async send proc in the connector
|
10 years ago |
Con Kolivas
|
42f14a9536
|
Add full lock tracking for mutexes and rwlocks
|
10 years ago |
Con Kolivas
|
865cd3a741
|
Remove unused variable
|
10 years ago |
Con Kolivas
|
8ebd5de420
|
Use json_getdel_int64 helper in the connector
|
10 years ago |
Con Kolivas
|
163fc40afb
|
Check all delayed clients for a serviceable one in the connector when we can and consider dropping a client servicing one to not potentially create delayed sends faster than we service them
|
10 years ago |
Con Kolivas
|
8b1b6d45d6
|
fd being invalidated is checked for in wait_write_select so we don't need to handle it twice
|
10 years ago |
Con Kolivas
|
0e7bc51541
|
Check all delayed clients for a serviceable one in the connector when we can and consider dropping a client servicing one to not potentially create delayed sends faster than we service them
|
10 years ago |
Con Kolivas
|
83208ebc72
|
fd being invalidated is checked for in wait_write_select so we don't need to handle it twice
|
10 years ago |
Con Kolivas
|
5665d54545
|
Test without dropping listen backlog
|
10 years ago |
Con Kolivas
|
1a3ed51ba9
|
Fix workings when no serverurl is explicitly specified in config
|
10 years ago |
Con Kolivas
|
5dd35d6555
|
Fix workings when no serverurl is explicitly specified in config
|
10 years ago |
Con Kolivas
|
04f4f090e2
|
Convert use of %ld to PRId64 in connector
|
10 years ago |