Con Kolivas
|
e40128a2da
|
Allow the loglevel to be changed on the fly
|
11 years ago |
Con Kolivas
|
1b3a972df2
|
Don't start receiving data till we are accepting connections in the connector
|
11 years ago |
Con Kolivas
|
d96b111653
|
Send a message from the generator to the connector to tell it when it can accept or should reject incoming connections
|
11 years ago |
Con Kolivas
|
50efbcba5f
|
Fix various warnings
|
11 years ago |
Con Kolivas
|
ca805e44f0
|
Provide a getfd function for getting the main connector file descriptor for seamless restarts
|
11 years ago |
Con Kolivas
|
20e056c4a1
|
Close sock in connector loop after we've finished using it
|
11 years ago |
Con Kolivas
|
63ccad9105
|
Remove interrupted retry in connector
|
11 years ago |
Con Kolivas
|
aa70f0db5e
|
Default unspecified port for proxy to 3334
|
11 years ago |
Con Kolivas
|
b297a35632
|
Remove unused buffer ram in send_client and demote messages to info level only
|
11 years ago |
Con Kolivas
|
86e70edfbc
|
Make all child processes ping the parent process at regular intervals and then die if it has disappeared. Do not attempt to send unix messages to dead processes and abort instantly on socket EINTR
|
11 years ago |
Con Kolivas
|
c4f0d57ae8
|
Fix various memory leaks
|
11 years ago |
Con Kolivas
|
a3a586ee6e
|
Use the retry on EINTR only on unix sockets
|
11 years ago |
Con Kolivas
|
7fabe1f14f
|
With sigpipe masked, interrupted send calls are likely fatal
|
11 years ago |
Con Kolivas
|
f48558d2b5
|
Detach child processes from the tty leaving only the main process to talk to it and exit all processes in a consistent way with more information on termination
|
11 years ago |
Con Kolivas
|
c9f550207f
|
Send one on all process failure codes
|
11 years ago |
Con Kolivas
|
f07fb994ed
|
Fix missing close socket in connector
|
11 years ago |
Con Kolivas
|
78c1b2dfda
|
Make process instances an array within the ckpool struct allowing us to enable only those we need when we add more modules to future code
|
11 years ago |
Con Kolivas
|
8631f33809
|
Accept ping requests on the various unix sockets
|
11 years ago |
Con Kolivas
|
b85946cc31
|
Failure to accept in connector should be a fatal error
|
11 years ago |
Con Kolivas
|
4f1d13e922
|
Send the last remaining send request without checking if it is ready for writes to avoid busy looping
|
11 years ago |
Con Kolivas
|
2ffdd791f7
|
Add support for dropclient being sent to the connector process
|
11 years ago |
Con Kolivas
|
bfb90fa632
|
Handle all poll revents with a recv and invalidate clients that don't respond
|
11 years ago |
Con Kolivas
|
5721ec1dcf
|
Reset revents before polling
|
11 years ago |
Con Kolivas
|
68ea10ac53
|
Fix name
|
11 years ago |
Con Kolivas
|
9290d1566a
|
Remove old instances from regularly used hashtables
|
11 years ago |
Con Kolivas
|
dc9012d777
|
Use a 2nd hashtable of connected clients indexed by fd for fast lookup
|
11 years ago |
Con Kolivas
|
a615b56d76
|
Install signal handlers which push the signal to the top process which will try to gracefully shut down each child process
|
11 years ago |
Con Kolivas
|
457f1c17ee
|
Create a separate thread for sending messages to clients, not blocking on any clients not ready for reads
|
11 years ago |
Con Kolivas
|
eabd8848bc
|
Add basic pool stats, updating and displaying them in a separate thread every 15s
|
11 years ago |
Con Kolivas
|
bab86af441
|
Optimise receiver loop
|
11 years ago |
Con Kolivas
|
077825a09d
|
Use only the one client instance struct in connector, ensuring it gets zeroed that way
|
11 years ago |
Con Kolivas
|
a6fe8f392c
|
Sleep briefly, don't poll when no fds are present
|
11 years ago |
Con Kolivas
|
c1c5b22058
|
There is no need to poll every second in the receiver thread
|
11 years ago |
Con Kolivas
|
328a85c1fe
|
Only assume clients have disconnected on an error from recv
|
11 years ago |
Con Kolivas
|
b6030d3809
|
Close sockets immediately after every received message in connector and stratifier
|
11 years ago |
Con Kolivas
|
9db3db3b8b
|
Enable keepalive and nodelay for remote clients and remove mistaken setting of noblock, and add reuseaddr option to sockets
|
11 years ago |
Con Kolivas
|
6a7e1bcc37
|
Add fake submit parsing and poll every second instead of millisecond
|
11 years ago |
Con Kolivas
|
3bee9efed6
|
Remove invalidated clients from broadcasts
|
11 years ago |
Con Kolivas
|
8be725bde6
|
Retry binding the connector to the socket for up to 2 minutes
|
11 years ago |
Con Kolivas
|
7f0824260b
|
Disconnect clients that send invalid json
|
11 years ago |
Con Kolivas
|
72ebb96ef6
|
Return a json response to any valid json from the stratifier to connector to send to the relevant connected client
|
11 years ago |
Con Kolivas
|
1b745f0db3
|
Pass recognised json messages sent to connector to stratifier with the added client_id field
|
11 years ago |
Con Kolivas
|
718bf11a46
|
Reference clients by id, not fd since fd can be the same and be invalidated
|
11 years ago |
Con Kolivas
|
5a0d3f8d24
|
Create a hashtable of workbases as they're created, removing them if they're older than 10 minutes old
|
11 years ago |
Con Kolivas
|
438f8c4472
|
Add the beginnings of a sanity checking client message parser
|
11 years ago |
Con Kolivas
|
f2b32839c1
|
Create a client instance hash table and use it to determine which fds need to be polled
|
11 years ago |
Con Kolivas
|
3c21f90aab
|
Use poll to connect many clients and see which connections need to be read in connector
|
11 years ago |
Con Kolivas
|
bcbafba42e
|
Create a thread from the connector process that listens for incoming connections and opens new connections for them
|
11 years ago |
Con Kolivas
|
55b8e8424a
|
Add connector process which will process all remote communications
|
11 years ago |