Commit Graph

820 Commits

Author SHA1 Message Date
Robinson
20c528b563
Updated library + version 2022-06-24 23:04:37 +02:00
Robinson
0550661067
Updated version 2022-06-24 14:42:24 +02:00
Robinson
cd65d16e14
Added support for a stacktrace that is empty 2022-06-24 13:13:28 +02:00
Robinson
0df4eb872d
Added support for getting specific aeron driver information 2022-06-24 13:12:18 +02:00
Robinson
3ede82e43f
UDP MediaDriver does not recreate driver connections during handshake. Re-organized how aeron driver connections are established 2022-06-24 13:11:39 +02:00
Robinson
cb1cd0cec9
Updated version 2022-06-16 18:05:15 +02:00
Robinson
20fcabaf8a
Fixed issue with RMI from a server -> client, where the RMI proxy objects were getting overridden by different connections because the RMI object cache was shared between all connections in the server. 2022-06-16 18:04:52 +02:00
Robinson
b8acc6b2c0
Now fixed streaming message data when finished 2022-06-16 00:49:13 +02:00
Robinson
f0f7a5eba1
Updated version 2022-06-15 23:53:45 +02:00
Robinson
52ee92c025
Replaced SuspendWaiter with mutex 2022-06-15 23:53:26 +02:00
Robinson
9c754c9525
Updated version 2022-06-14 22:23:01 +02:00
Robinson
f1ffbb48f0
Added more connection exceptions for edge cases when a connection attempt to the server can fail. 2022-06-14 22:22:38 +02:00
Robinson
81e3f204df
Updated version 2022-06-14 19:25:16 +02:00
Robinson
5dd9f50a0c
Fixed client connect issue when trying to shutdown 2022-06-14 19:24:48 +02:00
Robinson
0d01b8d303
Updated version and dependencies 2022-06-14 12:22:53 +02:00
Robinson
bf3d7b2be8
Updated version 2022-06-11 23:55:24 +02:00
Robinson
c62296edec
Added extra constructor signature for logger name 2022-06-11 23:53:39 +02:00
Robinson
b07bf150f9
Added extra stacktrace checks 2022-06-11 23:53:08 +02:00
Robinson
5b2b43b73e
removed ping timeout 2022-06-11 23:52:33 +02:00
Robinson
3dd333269e
Response waiter is now volatile, as it's data is used by DIFFERENT coroutines. 2022-06-11 22:36:23 +02:00
Robinson
542b678531
Removed unnecessary comments 2022-06-11 22:35:45 +02:00
Robinson
95a3b4eb69
Added class simpleName to log messages. Added more comments 2022-06-11 22:35:00 +02:00
Robinson
29dec146aa
Changed streaming payload size (we let aeron manage fragmentation as much as possible, as they do it more efficiently than we can 2022-06-11 22:34:16 +02:00
Robinson
7394b6abe2
Cleaned up toString 2022-06-11 22:32:46 +02:00
Robinson
96a9e2c9bb
Fixed comment typo 2022-06-11 17:29:33 +02:00
Robinson
b43b3840ab
update comment 2022-06-11 17:04:21 +02:00
Robinson
456faf0575
Updated version 2022-06-08 00:28:02 +02:00
Robinson
38ec9e882b
Removed experimental coroutine 2022-06-08 00:27:30 +02:00
Robinson
27e8520eb5
Removed unused parameters 2022-06-08 00:27:03 +02:00
Robinson
fd4eb256db
Updated DNS signature for client connections 2022-06-08 00:25:01 +02:00
Robinson
5445c52212
Updated version 2022-06-06 17:18:46 +02:00
Robinson
e302b1e429
Fixed edge condition when notifyDisconnect() would get called 2x on a server 2022-06-06 17:18:38 +02:00
Robinson
e0570527ae
More explicit connection specific listnerer manager for disconnect events 2022-06-06 11:57:20 +02:00
Robinson
ab791af801
Now uses DNS for name resolution if the client connection is not an IP address. 2022-06-04 01:32:58 +02:00
Robinson
e4976e3a5a
Added better log info when reconnecting to a server 2022-06-01 23:52:52 +02:00
Robinson
c79c0b49c8
Updated version 2022-05-30 02:55:36 +02:00
Robinson
e8f7c8d8d3
Cleaned up log messages, cleaned up handshakes, cleaned up polling code. Added unit test for concurrent client connections 2022-05-30 02:55:07 +02:00
Robinson
08ecaaf1c7
Code cleanup 2022-05-30 02:43:41 +02:00
Robinson
261d50af9e
Updated libraries, must support java11 now (because of crypto) 2022-05-30 02:12:54 +02:00
Robinson
9eb2fd7d7f
Added support for explicit loopback IP notation 2022-05-28 12:16:05 +02:00
Robinson
506c98df8d
Added support for custom logger names 2022-05-28 12:15:45 +02:00
Robinson
6f1fdfcff9
Updated version 2022-04-13 16:22:57 +02:00
Robinson
dc1ba169c9
Fixed wrong casting of object type 2022-04-13 16:22:39 +02:00
Robinson
6d2ca63bc0
Updated version 2022-04-04 23:24:42 +02:00
Robinson
217d1c3b19
cleaned up stacktraces 2022-04-04 23:05:50 +02:00
Robinson
82fb4c4151
Cleaned up exceptions 2022-04-04 23:05:08 +02:00
Robinson
41ea4872be
Fixed IPC connection issue 2022-04-04 23:04:27 +02:00
Robinson
ac4afd3d50
Fixed seconds -> MS for RMI ping 2022-04-04 19:39:05 +02:00
Robinson
113de5d12e
cleanStackTraceInternal now cleans the stack track from all coroutine info for all dorkbox.network stack traces. 2022-04-04 16:32:19 +02:00
Robinson
533aec6c2d
Better insight when specific client/server connection errors occur. 2022-04-04 16:30:05 +02:00
Robinson
a0664f05b1
comment cleanup 2022-04-04 16:29:16 +02:00
Robinson
4e248a969f
Fixed naming consistancy with regards to MS and NANOS 2022-04-04 16:28:53 +02:00
Robinson
22e7acab46
Added a streaming protocol (currently in-memory only) for sending data that large, or generally exceeds aeron's max transmit payload size 2022-04-04 14:48:38 +02:00
Robinson
c2ea674989
Kotlin accessor 2022-04-04 14:34:30 +02:00
Robinson
0195ef3dc8
Exposed read/write buffers for kryo. Reading objects can return null 2022-04-04 14:33:48 +02:00
Robinson
a3bacf7b89
Kotlin replacement for math util 2022-04-04 14:33:12 +02:00
Robinson
4967faf212
Connection timeouts should use currentTimeMillis (not nanoTime!) 2022-04-02 13:24:26 +02:00
Robinson
b0dd85a8f9
Updated version 2022-03-29 00:40:18 +02:00
Robinson
dc28c3f9e8
Updated comments, guarantee that a return value is returned via send. Moved common method to object 2022-03-27 21:14:55 +02:00
Robinson
b0a29d6837
Code cleanup 2022-03-24 01:27:01 +01:00
Robinson
b597bcd497
Timeout is now in nanos, client connections time out differently now. 2022-03-24 01:26:44 +01:00
Robinson
5c854c4fab
Prevent multiple instances within the same JVM from trying to start aeron at the same time 2022-03-23 18:31:38 +01:00
Robinson
3cac148db6
Fixed sendBufferSize defaults. Explicitly not setting defaults if the context has been defined. 2022-03-21 13:41:46 +01:00
Robinson
a8dd406b40
Added ability to customize the dispatch for network events 2022-03-18 16:34:38 +01:00
Robinson
c836848f91
Comment cleanup 2022-03-15 20:45:00 +01:00
Robinson
4cd0a439a6
Fixed issues when sending serialized primatives for class registration 2022-03-15 15:11:53 +01:00
Robinson
5c6c52e8b9
more comments 2022-03-15 14:34:14 +01:00
Robinson
29d63a4268
Fixed server.onDisconnect() listener notification. 2022-03-15 14:33:58 +01:00
Robinson
04fa453ff3
Merge remote-tracking branch 'origin/master' 2022-03-15 12:53:53 +01:00
Robinson
9f350fa767
Added Aeron subscriberErrorHandler 2022-03-15 12:43:40 +01:00
Robinson
f741c8823c
Fixed IPC client handshake timeout 2022-03-15 11:44:39 +01:00
Robinson
871827d800
Fixed log typo 2022-03-15 10:32:06 +01:00
Robinson
67bf5e2b21
Fixed client handshake timeout 2022-03-15 10:27:21 +01:00
Robinson
1bdfe5edf3
Don't show macos performance hints more than once 2022-03-08 23:35:19 +01:00
Robinson
53a3ba0309
Use OS.TEMP_DIR instead of manually requesting it 2022-03-08 23:25:55 +01:00
Robinson
06be3bee28
Connection timeouts are now in seconds, instead of milliseconds 2022-03-08 08:41:06 +01:00
Robinson
2a14d09a2c
Updated to support the split of Utilities + OS project. 2022-03-05 22:50:17 +01:00
Robinson
975cd4fb01
updated version 2022-03-04 23:49:49 +01:00
Robinson
d8aab11fdb
Updated dependencies + version 2022-03-03 01:25:32 +01:00
Robinson
98f8ad794e
update dependencies 2022-03-03 01:23:07 +01:00
Robinson
7aaf06c7a5
Exception now properly thrown when a message cannot be sent. 2022-03-02 23:54:32 +01:00
Robinson
f68418c27c
Updated dependencies. 2021-10-01 11:34:45 +02:00
Robinson
1ea24f026a increment version 2021-08-23 01:08:30 -06:00
Robinson
c8f4ba2b01 Now using the storage project 2021-08-23 00:52:16 -06:00
Robinson
40fb0d8caf use ByteArray extension for hex instead 2021-08-23 00:48:39 -06:00
Robinson
a75ece2a39 Now use the storage project 2021-08-23 00:42:02 -06:00
Robinson
87338c6f24 Fixed typos 2021-08-23 00:39:13 -06:00
Robinson
d8107860e5 Fixed GCM, now use threadlocal for hashing 2021-08-23 00:38:55 -06:00
Robinson
e8a1a20a16 code cleanup 2021-08-20 08:50:51 -06:00
Robinson
07daeafa05 updated version, updated build dependencies 2021-08-19 00:15:32 -06:00
Robinson
7f16ebcac0 WIP storage sub-system 2021-08-19 00:13:47 -06:00
Robinson
6945a5cdbb Fixed issue when starting up after a forcefully terminated (previous) run. If the aeron CnC file is corrupted, delete and try again. 2021-08-18 13:37:23 -06:00
Robinson
5847ad14e3 Updated version 2021-07-26 20:42:55 +02:00
Robinson
6a7fe7b1dc Added support for filtering aeron driver exceptions, onError listeners are now notified if there is an aeron driver error. 2021-07-26 20:40:43 +02:00
Robinson
a4a3057f39 Added comments. Fixed onErrorGlobal (it is now a separate name, since the function signatures had issues), made it a unit function instead of method, so it can be passed around 2021-07-26 20:18:04 +02:00
Robinson
7908ef2593 Fixed comments, tweaked shutdown delay 2021-07-26 20:17:03 +02:00
Robinson
388e4bda60 connections are now created via a unit function instead of overriding the method. 2021-07-09 15:16:12 +02:00
Robinson
c725806727 Cleaned up heap vs stack access, fixed ping support, fixed coroutine errors during serialization 2021-07-08 14:33:24 +02:00
Robinson
632603c8c7 WIP RMI and message performance/ping testing 2021-07-07 21:32:36 +02:00
Robinson
33f3ca8ebc Supports the newest version of Aeron. Updated error log usage and notifications. Refactored RMI API (now RMI is accessible via '.rmi' calls). Updated unit tests. Added 'delete' to rmi methods (opposite of 'create'). 2021-07-07 00:04:47 +02:00
Robinson
b8caa3b7c9 WIP JPMS 2021-07-02 11:41:05 +02:00
Robinson
ad9729b0ff Added comments 2021-07-01 20:15:07 +02:00
Robinson
9d507f1937 Added more comments 2021-07-01 20:13:54 +02:00
Robinson
649148dc08 better error message 2021-07-01 09:30:09 +02:00
Robinson
e62f8eba2e Changed line endings to LF from CRLF 2021-06-28 15:27:35 +02:00
Robinson
b5f7c109b2 Fixed deprecated channel offer method 2021-06-27 20:51:58 +02:00
Robinson
ab2af26b48 Fixed JPMS object casting 2021-05-02 21:56:10 +02:00
Robinson
7c5a935105 Added server global RMI delete() 2021-05-01 00:19:21 +02:00
Robinson
5196fa2d66 updated version 2021-04-30 22:42:37 +02:00
Robinson
ef4b76d303 Changed scope for onMessage/disconnect/connect/etc callbacks from 'connection' -> 'this'. 2021-04-30 22:39:36 +02:00
Robinson
048b780e2f Added tests for restarting a client via client.close(). connection.close() with a onDisconnect listener also works. The instance that started the aeron instance, is the one that cleans it up 2021-04-30 21:18:57 +02:00
Robinson
ae53cc333e Moved class registration info to trace 2021-04-30 19:52:57 +02:00
Robinson
bfccc6f7a5 WIP removeObject 2021-04-30 18:22:25 +02:00
Robinson
beb99d42da Removed 'config.enableIpcForLoopback'. it's behavior was rolled into 'enableIpc' 2021-04-30 18:22:08 +02:00
Robinson
3a4f4ff4b3 removed unnecessary code 2021-04-30 18:21:26 +02:00
Robinson
4507cf9f87 Removed RemoteObject.close() 2021-04-30 18:21:01 +02:00
Robinson
0b95a4503d more info in comments 2021-04-30 18:19:46 +02:00
Robinson
dfaf583f4f Added extension function for "eventLoop" dispatch to coroutines 2021-04-30 18:15:54 +02:00
Robinson
cffca943f5 No longer using coroutines for adding publication/subscription and closing certain calsses. Better aeron error handling/reporting. Better aeron startup/shutdown. The pending connections cache no longer is ThreadSafe, and no longer is protected via RW lock. 2021-04-30 18:14:33 +02:00
Robinson
3f016672e6 WIP ping mangement 2021-04-30 14:58:49 +02:00
Robinson
a3c0d9881a Fixed unnecessary errors when calling "connection.close()" from inside an RMI method. 2021-04-30 14:26:04 +02:00
Robinson
e7d13520df Updated kryo comments 2021-04-29 19:45:56 +02:00
Robinson
ad06f768f8 Fixed state with driver already running during shutdown 2021-04-29 13:34:45 +02:00
Robinson
402c5a0ccd Fixed missing Inet4.toAddress conversion 2021-04-29 11:19:31 +02:00
Robinson
a3b5cbcc89 WIP ping functionality 2021-04-29 10:25:25 +02:00
Robinson
7a6926df93 Changed handshake write to be THREAD strategy instead of COROUTINE strategy 2021-04-29 10:04:53 +02:00
Robinson
47b63173ac Added cloneToNormal, which converts the coroutine strategy -> thread strategy 2021-04-29 10:04:02 +02:00
Robinson
1e077c2d98 Added ability to add to an endpoint configuration 2021-04-29 10:02:22 +02:00
Robinson
2828758fee Updated how to access storage (via a property now) 2021-04-29 10:01:07 +02:00
Robinson
f5ab178948 Suppressed errors when starting/stopping an endpoint VERY quickly (as usually done in unit tests). These warnings, while noramlly VERY important, can be safely ignored. 2021-04-29 09:59:42 +02:00
Robinson
841b9959ac Fixed issues when reconnecting. 'onDisconnect' is now guaranteed to be called before 'onConnect' 2021-04-29 02:10:34 +02:00
Robinson
6d70313687 aeron driver is now properly start during reconnect event 2021-04-29 01:48:29 +02:00
Robinson
52d5f4b189 proper inet address resolution 2021-04-29 01:48:04 +02:00
Robinson
8068b1a5df Added version info 2021-04-29 01:47:53 +02:00
Robinson
37fbfe6ac1 cleaned up stacktrace, code polish 2021-04-29 01:47:25 +02:00
Robinson
9c7fa4de8d MediaDriver + aeron states are now reset on close 2021-04-29 01:46:18 +02:00
Robinson
36318690a2 Cleaned up RMI response manager object construction 2021-04-28 11:19:55 +02:00
Robinson
e747b52373 WIP ping infrastructure 2021-04-28 11:19:13 +02:00
Robinson
32cd2822ee Changed session ID -> ID for RandomIdAllocator.kt 2021-04-28 11:18:34 +02:00
Robinson
31f559accc updated version 2021-04-27 14:20:51 +02:00
Robinson
ad1c2450b9 Fixed deprecated methods 2021-04-27 14:19:56 +02:00
Robinson
8d47b8b0b8 Fixed missing parameter 2021-04-27 14:17:19 +02:00
Robinson
c706969005 Fixed package name 2021-04-27 14:00:31 +02:00
Robinson
f53e705432 Fixed "fast" reconnect issues, where sometimes the media driver would be disconnected from the aeron driver 2021-04-27 13:57:47 +02:00
Robinson
9e0bc0da3e Fixed stackframe index 2021-04-27 13:31:54 +02:00
Robinson
ed76209925 Changed RMI object callback to only be "this", instead of passing the (internal) rmiID around. The RMI-ID is used for internal rmi messages, so that a request+response can be paired. 2021-04-27 13:31:18 +02:00
Robinson
09087b470a Stack frame cleanup removes ALL coroutines 2021-04-27 10:55:29 +02:00
Robinson
bb245e2f8e Code cleanup 2021-04-27 10:28:36 +02:00
Robinson
29b0ee8199 Fixed connection filter on connect 2021-04-27 10:28:18 +02:00
Robinson
ef598b0b72 WIP connection setup 2021-04-27 10:27:03 +02:00