Con Kolivas
|
6c47d61bb1
|
Use reference counting to know when we can drop client structures in the connector
|
10 years ago |
Con Kolivas
|
1e4030b9ed
|
Fix wrong pointer in connector
|
10 years ago |
Con Kolivas
|
3ddef2d66f
|
Privatise all the connector specific data
|
10 years ago |
Con Kolivas
|
329afb56ac
|
Cosmetic tidy
|
10 years ago |
Con Kolivas
|
1fe5373c87
|
Handle early exiting of connector receiver and sender threads
|
10 years ago |
Con Kolivas
|
d42185a5eb
|
Tidy up receiver loop
|
10 years ago |
Con Kolivas
|
0887d993fd
|
Remove parse client msg from accept client
|
10 years ago |
Con Kolivas
|
42fc9ca8f6
|
Rewrite connector receive thread to use epoll and remove associated now unnecessary fd hashtable
|
10 years ago |
Con Kolivas
|
c8627c0d1b
|
Listen with the maximum backlog when we first start for more seamless restarts and then drop to the minimum afterwards to effectively ratelimit new connections
|
10 years ago |
Con Kolivas
|
f84c0aa2cd
|
Make number of clients we can connect to unlimited
|
10 years ago |
ckolivas
|
b1e921a364
|
Make the stratifier drop a client id if it's still trying to send to a client that no longer exists in the connector
|
10 years ago |
ckolivas
|
620d613d1a
|
Add a maxclients directive that stops accepting clients when there are too many
|
10 years ago |
Con Kolivas
|
eda428dc7f
|
Handle potentially recoverable errors in accept() to allow us to share the fd in future
|
10 years ago |
ckolivas
|
7b46de8d53
|
Fix more thinkos
|
10 years ago |
ckolivas
|
7edc80324c
|
Fix thinko
|
10 years ago |
ckolivas
|
d1b095d1af
|
Fix typo
|
10 years ago |
ckolivas
|
676bb887bb
|
Rework the poll loop to be cleaner and more efficient
|
10 years ago |
Con Kolivas
|
dd187da977
|
Add the server accept to the receiver's poll function, eliminating the need for short polls and one extra thread
|
10 years ago |
Con Kolivas
|
0c16e193ce
|
Set no linger on all connected clients
|
10 years ago |
Con Kolivas
|
7d878bd223
|
Force close when dropping a client with a reset using SO_LINGER and give a warning on close failure
|
10 years ago |
Con Kolivas
|
146e3140f3
|
Add client source port to verbose logging
|
10 years ago |
Con Kolivas
|
5c6e048a2e
|
Poll every 100ms instead of every second in the connector to rapidly pick up new clients
|
10 years ago |
Con Kolivas
|
26b4037eff
|
Log a warning if a client with an invalidated fd is still in the fdclients hashtable
|
10 years ago |
Con Kolivas
|
3bf4e0de8d
|
Always send dropclient to the stratifier on every invalidate client call
|
10 years ago |
Con Kolivas
|
7da6c0b2a0
|
Use the Close handler in connector.c
|
10 years ago |
Con Kolivas
|
86f72ff889
|
Keep rereading in parse_client_msg if the socket indicates it is still ready for further reads
|
10 years ago |
Con Kolivas
|
8d625b736b
|
Revert "Close polled fds that are ready for reads but no longer have a client associated with them"
This reverts commit f6f61e8870 .
|
10 years ago |
Con Kolivas
|
f0f948171a
|
Invalidate interrupted clients and increase verbosity of messages logged
|
10 years ago |
Con Kolivas
|
f6f61e8870
|
Close polled fds that are ready for reads but no longer have a client associated with them
|
10 years ago |
Con Kolivas
|
48b2e72661
|
Rereading with dontwait is pointless and adds complexity
|
10 years ago |
Con Kolivas
|
ae1f9827ac
|
Revert "Always re-read with dontwait when parsing a client message"
This reverts commit e3b4d969d5 .
|
10 years ago |
Con Kolivas
|
e3b4d969d5
|
Always re-read with dontwait when parsing a client message
|
10 years ago |
Con Kolivas
|
70393442a3
|
Zero bufofs in connector loop for completeness and make sure to retry if there is more data to read
|
10 years ago |
Con Kolivas
|
2d6d982bb1
|
Add buf offset to disconnect message and reset flags on looping
|
10 years ago |
Con Kolivas
|
a493539a75
|
Only add strerro if errno != 0
|
10 years ago |
Con Kolivas
|
17d1455267
|
Add more info to disconnects
|
10 years ago |
Con Kolivas
|
3d6601d20c
|
Maximise the nonce2 size in proxy mode and ensure we don't clash enonce1 instances, rejecting clients when there is no more space available
|
10 years ago |
Con Kolivas
|
ffb054c95a
|
Show all connector messages in debug mode
|
10 years ago |
Con Kolivas
|
873b1b702a
|
Reattempt sending delayed sends immediately after servicing one send successfully.
|
10 years ago |
Con Kolivas
|
55f8d2d2dd
|
Use int64_t lookups in uthash and fix some cosmetic errors with integers
|
10 years ago |
Con Kolivas
|
17a4cab86c
|
Off by one error on new connections
|
10 years ago |
Con Kolivas
|
00f08eed05
|
Make client id use the passthrough id as high bits of a 64bit version of the client id to determine the intrinsic stratum client versus the connected client
|
10 years ago |
Con Kolivas
|
b1ae420fd3
|
Pass through message to relevant processes with separate threads in passthrough mode
|
10 years ago |
Con Kolivas
|
6f12bd51a2
|
Process mining.passthrough as a subclass of proxy and set up handling of clients in preparation for passthrough routing
|
10 years ago |
Con Kolivas
|
0fb34986dd
|
Abandon trying to mix delayed sends with new ones, instead adding them to a separate linked list and always polling every 100ms
|
10 years ago |
Con Kolivas
|
3b3ff68090
|
Only poll in the connector sender loop if the top of the list is a delayed writer
|
10 years ago |
Con Kolivas
|
611a06b31f
|
Make sure to check the pthread conditional when polling for stalled sends since there will always be a send in the list
|
10 years ago |
Con Kolivas
|
c650382b2d
|
Discard messages being sent to clients who error on select
|
10 years ago |
Con Kolivas
|
30df779bfa
|
Polling on a blocked writer should be 100ms not 1ms
|
10 years ago |
Con Kolivas
|
73e807a6b6
|
Don't extract sockaddr when we have an old fd
|
10 years ago |