Commit Graph

204 Commits

Author SHA1 Message Date
Robinson fe98763712
All connections are now buffered - in the event there is a network issue, or a quick reconnect, and messages are sent DURING this disconnected phase, these messages will be resent on the new connection once it is connected 2023-10-28 20:54:40 +02:00
Robinson 1b235e21aa
waiting for endpoint to shutdown better supports restarts 2023-10-26 21:14:05 +02:00
Robinson 7f2ad97aa7
code cleanup and comments 2023-10-26 14:57:48 +02:00
Robinson 70825708a3
More careful event dispatch (no longer global, but per endpoint) 2023-10-26 08:09:47 +02:00
Robinson 6fb5dbb833
added sendDisconnectMessage to API when closing 2023-10-18 19:52:31 +02:00
Robinson 4d09999f0a
Updated logging 2023-10-17 16:48:31 +02:00
Robinson 78374e4dfc
More clearly defined session management. Fixed problem when reconnecting + RMI create callbacks. 2023-09-25 13:59:26 +02:00
Robinson 8bbaa6df18
Cleaned up sessions 2023-09-22 15:54:01 +02:00
Robinson e6b4cbd386
Added support for sessions 2023-09-21 12:53:47 +02:00
Robinson f269684ea5
newConnection method reverted back to function, which allows for easier extension of class types 2023-09-17 02:36:45 +02:00
Robinson b2b6cfdc10
Removed KotlinLogging (it has a niche usage that did not apply) 2023-09-13 17:04:25 +02:00
Robinson 81380fe633
Wrapped logger.debug/trace into if statements to prevent the JVM from creating unnecessary lambdas 2023-09-13 16:01:14 +02:00
Robinson c69512eda4
pollerClosedLatch is now only created once we've fully started (prevent blocking forever when shutting down) 2023-09-08 13:21:12 +02:00
Robinson e3a565f291
Fixed issues with streaming (it MUST be the aeron thread) 2023-09-08 02:49:35 +02:00
Robinson d772088eed
Streaming data now goes onto its own context instead of on the aeron polling thread 2023-09-07 18:35:58 +02:00
Robinson 2e8382eb2f
removed debug code 2023-09-07 17:23:27 +02:00
Robinson 94ae22716d
Fixed issues with heap garbage generation and performance (suspend is better than blocking, but only with short execution stacks) 2023-09-07 01:00:53 +02:00
Robinson d64a4bb1e1
Moved ping() to the connection object 2023-09-05 12:57:16 +02:00
Robinson 8b62dbb063
Removed more coroutine, simplified methods 2023-09-04 14:23:06 +02:00
Robinson e185f496ec
Removed coroutines/suspending calls 2023-09-04 00:48:00 +02:00
Robinson 8e7c47abcc
code cleanup 2023-08-10 20:11:23 -06:00
Robinson 96f5406ae6
More careful checks when closing endpoints during restart
code polish
2023-08-10 20:05:49 -06:00
Robinson 466363901c
code cleanup 2023-08-10 20:03:06 -06:00
Robinson 77d56b8804
Direct access to critical error now instead of proxy 2023-08-10 20:02:38 -06:00
Robinson def935214f
comment cleanup 2023-08-09 22:13:39 -06:00
Robinson 07e1da3660
Tweaked how waiting for close works 2023-08-09 22:13:12 -06:00
Robinson 90d218637c
Cleaned up how new aeron drivers are created 2023-08-09 22:11:57 -06:00
Robinson 4d73d4802c
cleaned up imports 2023-08-09 22:06:22 -06:00
Robinson 836c8abce6
Cleaned up/tweaked endpoint.close() 2023-08-09 21:35:40 -06:00
Robinson 28d170c25c
Added support for detecting critical driver errors 2023-08-09 21:18:47 -06:00
Robinson 3dcd2af495
Moved aeron.send() logic to the driver 2023-08-09 21:17:10 -06:00
Robinson 9fcbabd061
cleaned up logging 2023-08-09 21:10:41 -06:00
Robinson 3016618b1c
Added support for also changing the aeron driver idle strategies 2023-07-24 01:42:27 +02:00
Robinson 15c7fb2a3d
Code cleanup 2023-07-23 23:02:29 +02:00
Robinson a140c844db
Code cleanup 2023-07-23 13:41:29 +02:00
Robinson 6754e35c61
Code cleanup 2023-07-23 13:40:16 +02:00
Robinson 06b5f30948
Only check if a connection is closed now. We now wait for pub+sub to be "connected" before continuing to build the connection object (so it will always be in the connected state) 2023-07-23 13:39:27 +02:00
Robinson daec762e30
More specific errors when connection is closed during poll event 2023-07-23 01:20:16 +02:00
Robinson 2620a06409
Cleaned up how kryo's are used
Changed idleStrategy
StreamingManager no longer copies bytes (it just uses a pooled kryo instance)
2023-07-21 00:19:31 +02:00
Robinson 80d77f2f51
Better lock-step and checks when closing an endpoint 2023-07-20 20:39:12 +02:00
Robinson 94048cfe8f
Added file transport to streaming manager 2023-07-16 14:57:04 +02:00
Robinson bb026f377b
WIP compression/crypto 2023-07-15 13:12:59 +02:00
Robinson c4eda86bfe
Optimized how we send data (we use our own stream/block data structures for fragmentation/reassembly. 2023-07-15 13:11:50 +02:00
Robinson 93a7c9008d
Code cleanup and fixed issues when sending non-perfect multiples of our data limit. 2023-07-15 13:07:17 +02:00
Robinson 09748326c9
Cleaned up crypto management, removed dead code 2023-07-12 14:19:54 +02:00
Robinson 6bf870bd7b
Split kryo TYPES into read/write types, so usage is very clear. Now use a kryo pool for concurrent serialization 2023-07-12 14:08:46 +02:00
Robinson 2f7a365f75
Moved `errorCodeName` into the driver 2023-07-11 11:50:48 +02:00
Robinson 4797b7e816
Added port1/2 settings to server + client.
Fixed relevant unit tests
2023-07-11 00:11:58 +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 a8903b2382
Cleaned up close API 2023-07-04 01:00:01 +02:00