Alva Swanson
10c46a3163
Fix MailboxMessageService thread leak/explosion
...
Each time when MailboxMessageService.onAdded(...) got called with
multiple mailbox entries a new thread got created. That thread was never
shutdown. This change explicitly creates a new Thread and sets its
result with a SettableFuture. After its computation the thread
terminates.
2023-01-31 17:02:09 +02:00
Alejandro García
0a24f4c2d4
Merge pull request #6543 from alvasw/sychronized_proto_output_stream_try_graceful_shutdown_first
...
Sychronized proto output stream try graceful shutdown first
2023-01-28 19:24:32 +00:00
Alejandro García
b87de3dcbd
Merge pull request #6542 from alvasw/connection_close_proto_outputstream_before_socket
...
Connection: Close protoOutputStream before closing socket
2023-01-28 19:23:43 +00:00
Alva Swanson
7524425e74
SychronizedProtoOutputStream: Try graceful shutdown first
...
ProtoOutputStream is not thread-safe. This change tries to close the
stream on the same thread first. Before forcefully killing it after a
timeout.
2023-01-27 17:14:17 +02:00
Alva Swanson
9e8b54054a
Connection: Create shutdown timeout constant
2023-01-27 17:14:17 +02:00
Alva Swanson
e593adb602
Connection: Close protoOutputStream before closing socket
...
The protoOutputStream depends on the sockets OutputStream. Closing the
socket before closing the protoOutputStream will always trigger an
IOException.
2023-01-27 17:08:08 +02:00
Alva Swanson
6a8fb05156
Centralize all ExecutorService creations in Utilities
2023-01-27 16:15:24 +02:00
Alejandro García
d859f391bf
Merge pull request #6510 from HenrikJannsen/improve_connection_logs
...
Improvements in connection and increase timeout
2023-01-12 16:33:40 +00:00
Alejandro García
fda3c45008
Merge pull request #6501 from HenrikJannsen/always_include_high_prio_payload_in_get_data_response
...
Always include high prio payload in get data response
2023-01-12 16:33:08 +00:00
HenrikJannsen
ef7bb81b29
truncate logged proto
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-06 22:18:21 -05:00
HenrikJannsen
69b0bfa676
remove stacktrace
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-06 22:12:55 -05:00
HenrikJannsen
7a147ff9e8
Reduce log level
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-06 21:59:24 -05:00
HenrikJannsen
4888ae15ea
Truncate to length 15 instead of 10
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-06 21:13:37 -05:00
HenrikJannsen
1497b5ed6a
Add uid to thread name, shorten address in thread name
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-06 21:08:00 -05:00
HenrikJannsen
d3c573fc55
Add more detail logs
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-06 20:34:01 -05:00
HenrikJannsen
bdbb857c3f
Add more logs
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-06 20:00:43 -05:00
Alejandro García
6f8204a73a
Merge pull request #6506 from HenrikJannsen/update_BurningManAccountingStore
...
Update BurningManAccountingStore
2023-01-06 14:10:11 +00:00
HenrikJannsen
9fe3d22b24
Cleanup
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-05 22:23:24 -05:00
HenrikJannsen
719602358d
Increase pool size
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-05 22:17:09 -05:00
HenrikJannsen
31592ac955
Update BurningManAccountingStore
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-05 21:46:44 -05:00
HenrikJannsen
9deaa32df7
Disable tests for GetDataResponse
...
Sorry I don't have time atm to fix the complex tests. In the past the issues have always been caused by test setup issues and not because of introduced bugs.
Here we changed the algorithm for truncation, so that might be the case why it fails, or it is the new method for priority which might cause issues with the mocks.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-05 11:39:28 -05:00
HenrikJannsen
33357cfc8d
Remove debug logs
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-05 00:27:29 -05:00
HenrikJannsen
7db8255e0b
Add GetDataResponsePriority for filtering payloads for GetDataResponse.
...
Fix sorting at truncating DateSortedTruncatablePayloads.
Rebroadcast high prio items
2023-01-04 23:55:47 -05:00
HenrikJannsen
1172eec2ce
Improve log
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-04 18:14:06 -05:00
HenrikJannsen
5efd13a678
Check if setException returns false and if so, cancel future.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-04 18:09:04 -05:00
HenrikJannsen
5e29bfe4c2
Maintain pending futures and cancel them at cleanup.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-04 14:01:54 -05:00
HenrikJannsen
3e48956227
Increase numOfFailedBroadcasts at timeout
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-04 14:01:54 -05:00
HenrikJannsen
de32339926
Remove stop setter at cancel
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-04 14:01:53 -05:00
HenrikJannsen
20b39a4055
Do not send close message to banned node
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-04 14:01:53 -05:00
HenrikJannsen
41fb5e464c
Use AtomicBoolean for stopped and timeoutTriggered
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-04 14:01:53 -05:00
HenrikJannsen
b7d1a9da22
Increase thread pool size at Broadcaster
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2023-01-03 19:58:29 -05:00
HenrikJannsen
d5b4ce275b
Add support for listeners when GetDataResponse and GetBlocksResponse are sent.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-27 17:54:08 -05:00
HenrikJannsen
1030f891b9
Improve/cleanup logs.
...
Only log lostAllConnections after numOnConnections > 2 to avoid logs at startup
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-27 17:54:08 -05:00
HenrikJannsen
a8a0c0e725
Add custom thread pool to broadcaster
...
The broadcasting consumes most of the threads but has lower priority than other messages being sent.
By separating that thread pool from the common sendMessage executor we can reduce the risk that a burst of
broadcasts exhausts the thread pool and might drop send message tasks.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-27 17:33:39 -05:00
HenrikJannsen
d5b65fe239
Reduce keepAliveTime to 30 sec.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-27 17:31:07 -05:00
HenrikJannsen
7953e35395
Add executor parameter to sendMessage
...
Add try/catch to handle RejectedExecutionException
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-27 17:13:13 -05:00
HenrikJannsen
4a72c27fa0
Increase queue capacity from 10 to 30.
...
https://github.com/bisq-network/bisq/issues/6480 reported reaching the limit with the current settings.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-22 08:46:02 +01:00
HenrikJannsen
30afccb2d6
Use ThreadPoolExecutor with custom set queueCapacity instead of CachedThreadPool
...
The previously used newCachedThreadPool carries higher risk for execution exceptions if exceeded.
Originally we had only one executor with a corePoolSize of 15 and a maximumPoolSize of 30 and queueCapacity was set to maximumPoolSize.
This was risky when the 15 corePool threads have been busy and new messages or connection creation threads are
queued up with potentially significant delay until getting served leading to timeouts.
Now we use (if maxConnections is 12) corePoolSize of 24, maximumPoolSize 36 and queueCapacity 10. This gives
considerable headroom. We also have split up the executors in 2 distinct ones.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-19 16:50:55 +01:00
HenrikJannsen
1b182743a2
Update BurningManAccountingStore_BTC_MAINNET
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-19 09:31:58 +01:00
HenrikJannsen
2f9f66280a
Remove try catch. Will be handled in Future fault handler
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-19 09:31:55 +01:00
HenrikJannsen
ddf5239800
Increase timeouts from 3 to 4 min.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-19 09:27:44 +01:00
HenrikJannsen
6aad3a8dc5
Reduce getDataResponse size from 9 MB to 6 MB
...
Reduce number of blocks at GetBlocksResponse from 4000 to 3000
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-19 09:27:27 +01:00
Christoph Atteneder
2b77f777a3
Update data stores for v1.9.7
2022-12-14 11:13:23 +01:00
Christoph Atteneder
5dea677644
Merge pull request #6459 from HenrikJannsen/handle_exception_at_send
...
Handle exception at send
2022-12-14 10:20:07 +01:00
Christoph Atteneder
71d6e126dd
Merge pull request #6423 from HenrikJannsen/add-burningman-accounting
...
Add burningman accounting
2022-12-14 10:17:38 +01:00
HenrikJannsen
8c65da9c85
Add thread index format
...
Add name param to newCachedThreadPool
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-13 20:35:49 -05:00
HenrikJannsen
fc2f9241b8
Apply codacy complaint
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-13 20:30:41 -05:00
HenrikJannsen
ebb6652cef
Remove restartTor method as restart is not supported anymore.
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-13 18:15:23 -05:00
HenrikJannsen
c000d38a09
Remove unnecessary thread and try/catch.
...
Wrap nodeAddressProperty.set into UserThread.execute as it is a javafx api. We call startServer also in that execute scope to maintain order of calls.
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-13 18:11:49 -05:00
HenrikJannsen
04a1dee9e9
Cleanup
...
Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-12-13 18:07:01 -05:00