Commit Graph

1101 Commits

Author SHA1 Message Date
Robinson
4797b7e816
Added port1/2 settings to server + client.
Fixed relevant unit tests
2023-07-11 00:11:58 +02:00
Robinson
ebad4d234b
Fixed driver liveliness checks 2023-07-11 00:02:40 +02:00
Robinson
cba66a6959
Removed SigInt catch. It should be managed by the application, not the library. 2023-07-05 12:53:21 +02:00
Robinson
897db748e7
Removed dead code 2023-07-05 12:52:36 +02:00
Robinson
ce6ffec197
When an endpoint restarts too quickly, wait a more appropriate timeout 2023-07-05 12:52:23 +02:00
Robinson
a8903b2382
Cleaned up close API 2023-07-04 01:00:01 +02:00
Robinson
74066060d7
Fixed close ambiguity 2023-07-03 22:02:02 +02:00
Robinson
739ad30987
Exposed direct commands to delete the aeron directory 2023-07-03 21:44:09 +02:00
Robinson
f4c01d6f94
Expose the endpoint config. 2023-07-03 21:41:06 +02:00
Robinson
b4a57c9525
ListenerManager now uses volatile arrays instead of atomic (still follows single-writer-principle) 2023-07-03 21:40:07 +02:00
Robinson
2b4ba1347e
Connection handshake timeouts are more standardized to nanoseconds 2023-07-03 19:18:34 +02:00
Robinson
23d4ea4609
Cleaned up deleting log files on a bad handshake 2023-07-03 14:59:11 +02:00
Robinson
effc88feb7
Registered close to SigInt 2023-07-03 14:58:46 +02:00
Robinson
a4e2e714c4
made event access more east to understand 2023-07-03 14:58:29 +02:00
Robinson
7b7910d078
Better try/catch around handshake logic 2023-07-03 11:57:26 +02:00
Robinson
7a39044df0
Fixed memory leak when shutting down 2023-07-03 11:23:42 +02:00
Robinson
ee296394de
Fixed issues when deserializing messages during the HANDSHAKE, where we would run out of memory (instantly delete the image file representing the bad connection). 2023-07-03 10:46:18 +02:00
Robinson
2a52c2b4d5
Cleaned up how pub/priv key are initialized/used 2023-07-03 01:47:18 +02:00
Robinson
eeeeed81aa
Better double check when starting up to see if aeron is already running 2023-07-03 00:54:44 +02:00
Robinson
edada596f0
public/private keys + salt use kotlin val get/set now (cleaner API) 2023-07-02 22:00:11 +02:00
Robinson
6220ec617b
Better toString() methods for the unique ID of the client/server 2023-07-02 21:59:45 +02:00
Robinson
e403e1d6e1
Now use the client public-key as the client ID for the connection (to determine/know exactly which connection belongs to what client) 2023-07-02 21:56:46 +02:00
Robinson
87e790dcaf
Added support for publication cache during handshake. 2023-07-01 22:51:53 +02:00
Robinson
0848badc69
IP address/bind check ignored for IPC connections 2023-07-01 22:51:20 +02:00
Robinson
0e13da73c9
fixed typo 2023-07-01 22:50:22 +02:00
Robinson
b9fc246af1
Code cleanup 2023-07-01 13:44:02 +02:00
Robinson
eb0bde3354
Removed unnecessary buffer flush on error 2023-07-01 13:31:50 +02:00
Robinson
c35b2c3115
Fixed merge conflicts 2023-07-01 13:26:06 +02:00
Robinson
598e06e9d3
Fixed merge conflicts 2023-07-01 13:20:14 +02:00
Robinson
141a39544a
part 2, moved IPC/UDP handshake ids to config 2023-07-01 11:43:55 +02:00
Robinson
6020f06661
code cleanup 2023-07-01 11:43:20 +02:00
Robinson
a42c9ad940
Better log message 2023-07-01 11:42:54 +02:00
Robinson
cce3957089
Moved IPC/UDP handshake stream ID to config 2023-07-01 11:41:47 +02:00
Robinson
55737c41c3
Code cleanup 2023-07-01 11:41:10 +02:00
Robinson
ace2ac453b
When adding a pub/sub, guarantee that it is active and bound. 2023-07-01 11:37:09 +02:00
Robinson
a41a6c6d62
Added comments 2023-07-01 11:28:34 +02:00
Robinson
12977bb046
wait longer if the system is trying to start too quickly 2023-07-01 11:28:22 +02:00
Robinson
6202015b08
Cleaned up newException stack traces 2023-06-30 00:06:53 +02:00
Robinson
9f3c265ee1
Flush the read buffer when kryo encounters an error reading data 2023-06-30 00:04:29 +02:00
Robinson
2a1c303c6a
Moved localAddressString logic the Driver 2023-06-29 23:51:56 +02:00
Robinson
0cc8828ce8
Better log message for what port is used on the server 2023-06-29 21:50:49 +02:00
Robinson
7cbfa679b5
More expressive error logs when a pub/sub cannot be created 2023-06-29 21:50:28 +02:00
Robinson
daa0d14e2b
Endpoint RuntimeShutdown hook is in a try/catch now 2023-06-29 20:57:01 +02:00
Robinson
ae67bb4899
Client/Server isRunning checks will COPY the config instead, so that we don't "hack" the configs to make sure they continue working as expected 2023-06-29 20:56:43 +02:00
Robinson
c0e8cbf28f
Added retry limit of 0 to try forever 2023-06-29 20:16:42 +02:00
Robinson
7c0283b775
Removed dead code 2023-06-29 20:01:38 +02:00
Robinson
95372a0e4c
updated module-info 2023-06-29 19:58:31 +02:00
Robinson
835ae99e9c
Code cleanup 2023-06-29 19:53:31 +02:00
Robinson
7281cdb9f4
Added lingerNS to ensureStopped 2023-06-29 19:28:08 +02:00
Robinson
c66f977963
Endpoints will auto-close during JVM shutdown 2023-06-29 19:27:25 +02:00
Robinson
06f26187ce
code cleanup 2023-06-29 19:26:45 +02:00
Robinson
dec10ab4bc
OnError callbacks are now suspending 2023-06-29 12:12:29 +02:00
Robinson
15f93cf1b0
AeronOutput is not-final 2023-06-29 12:12:14 +02:00
Robinson
5ec2abfc9b
Added better support for streaming large amounts of data (uses temp files if it's too much data) 2023-06-29 12:11:17 +02:00
Robinson
53939470b9
Added the required application ID. Added ability to override client-listen-port, permit allowing to run shared instances of the aeron driver across processes. 2023-06-29 01:32:04 +02:00
Robinson
510fc85f2c
Removed streaming kryo and temp kryo 2023-06-28 20:31:08 +02:00
Robinson
05ba2c8132
Fixed issues with wrong subscription listening for DONE_ACK 2023-06-28 15:12:40 +02:00
Robinson
48cece9202
Code cleanup 2023-06-28 15:12:10 +02:00
Robinson
bd289c7ce6
Converted to use exclusive publications, cleaned up wait-to-connect logic, removed deletePub/Sub (that's not recommended for production) 2023-06-28 15:11:11 +02:00
Robinson
cdb90b1809
Refactored serialization (it is more explicit now) 2023-06-27 01:25:56 +02:00
Robinson
55604c679c
Moved port from configuration file to API call for connect() and bind() 2023-06-26 19:28:55 +02:00
Robinson
a02c737c6c
Updated inet serializer location 2023-06-26 02:11:43 +02:00
Robinson
58c8d87da4
Initial implementation of JMPS bypass for the TransportPoller 2023-06-26 02:11:10 +02:00
Robinson
43c4b6c742
Fixed issues when shutting down before starting up 2023-06-26 00:37:33 +02:00
Robinson
2eeed92c97
updated logging 2023-06-25 17:27:12 +02:00
Robinson
231ab230ba
Updated disconnect api 2023-06-25 17:26:05 +02:00
Robinson
d63b8a6514
changed logger 2023-06-25 17:25:13 +02:00
Robinson
3897becef1
Addec copy(), changed the defaultMessageCoroutineScope to be 'Default' instead of IO. The defaultNetworkEventPoll is now in the event poller 2023-06-25 17:25:05 +02:00
Robinson
078cf36e22
Permit external usage of closing everything when shutting down 2023-06-25 17:23:44 +02:00
Robinson
3a07b6bf86
Reference of existing list is kept before dispatching into new threads 2023-06-25 17:22:59 +02:00
Robinson
9a3e49bca4
Code cleanup 2023-06-25 17:21:25 +02:00
Robinson
3a9e9fea71
fixed issues with event poller lifecycle 2023-06-25 17:20:55 +02:00
Robinson
88f082097a
code cleanup 2023-06-25 12:21:21 +02:00
Robinson
4b511b2615
Cleaned up comments and logging 2023-06-25 12:13:52 +02:00
Robinson
119870bdc8
Added more comments, events now run on specific threads 2023-06-25 12:12:53 +02:00
Robinson
8e30883ebc
Code polish/cleanup 2023-06-25 12:05:41 +02:00
Robinson
c9e71c56b1
Code polish 2023-06-25 12:02:04 +02:00
Robinson
e02ef7d7e8
Handshake cleanup 2023-06-25 12:01:37 +02:00
Robinson
03974514c5
Code cleanup, added UUID support 2023-06-25 11:52:19 +02:00
Robinson
ff5d1ed430
Added logging 2023-06-25 11:52:01 +02:00
Robinson
80b4f2af48
Code cleanup 2023-06-24 12:23:07 +02:00
Robinson
3c02c28162
Added uuid, cleaned up logic 2023-06-24 12:21:57 +02:00
Robinson
f95b1f63ca
Updated copyright/comments 2023-06-24 02:06:17 +02:00
Robinson
422e983e85
Added comments 2023-06-24 02:06:03 +02:00
Robinson
115e63edf5
Added more exception types 2023-06-22 11:47:02 +02:00
Robinson
76c644b573
Added client UUID support 2023-06-22 11:46:30 +02:00
Robinson
f991182bbd
If a connection is manually closed, don't wait for aeron timeouts 2023-06-22 11:43:50 +02:00
Robinson
27696a0929
Added reserved class serialization registrations 2023-06-20 16:28:12 +02:00
Robinson
87a6fefe69
Code/logging cleanup 2023-06-19 14:03:18 +02:00
Robinson
1556cbe10d
Added method to easily reverse pub/sub info and added log output 2023-06-19 13:54:56 +02:00
Robinson
3d37a2267f
added more exception types 2023-06-19 13:53:28 +02:00
Robinson
da0db98658
more specific parameter names, better toString() info 2023-06-19 12:19:04 +02:00
Robinson
21e2504719
Added more exception types 2023-06-19 12:17:49 +02:00
Robinson
bd7bb78696
Cleaned up logging 2023-06-18 18:19:23 +02:00
Robinson
ddb41762cf
Response manager uses its own coroutineScope now 2023-06-18 18:18:22 +02:00
Robinson
49b9ee98a2
ResponseManager now uses it's own EventDispatcher for events (to prevent potential deadlocks during RMI operations) 2023-06-17 12:16:50 +02:00
Robinson
7e748bd7dc
Reference copies of atomic lists when calling them (in case the list is cleared in a reentrant call 2023-06-16 14:48:19 +02:00
Robinson
cf4b61f4de
logic update 2023-06-16 14:19:58 +02:00
Robinson
eeed70b2c3
Updated error logs 2023-06-16 14:19:46 +02:00
Robinson
9e3a5b4d16
Updated secure random 2023-06-16 14:18:42 +02:00