Evgeny
d5efe3406a
agent: fix race when sending a message to the deleted connection ( #1296 )
2024-09-02 15:07:16 +01:00
Evgeny Poberezkin
d559a66145
6.0.3.0
v6.0.3
2024-08-30 12:55:17 +01:00
Evgeny
ce6777b68d
newtype for server entity IDs, fix TRcvQueues ( #1290 )
...
* put DRG state to IORef, split STM transaction of sending notification (#1288 )
* put DRG state to IORef, split STM transaction of sending notification
* remove comment
* remove comment
* add comment
* revert version
* newtype for server entity IDs, fix TRcvQueues
* Revert "put DRG state to IORef, split STM transaction of sending notification (#1288 )"
This reverts commit 517933d189 .
* logServer
2024-08-30 12:50:02 +01:00
Evgeny
655e7ad7d5
smp server: get message queue faster, avoiding STM contention if queue exists, split transaction for notification delivery ( #1289 )
...
* put DRG state to IORef, split STM transaction of sending notification (#1288 )
* put DRG state to IORef, split STM transaction of sending notification
* remove comment
* remove comment
* add comment
* revert version
* smp server: get message queue faster, avoiding STM contention if queue exists
* IORef for counter
* Revert "put DRG state to IORef, split STM transaction of sending notification (#1288 )"
This reverts commit 517933d189 .
* version
* remove IORef
* split notification delivery transations
* revert version
2024-08-30 11:53:22 +01:00
Evgeny
9596a03139
servers: reduce STM transactions ( #1287 )
...
* servers: reduce STM transactions
* switch stats and pending ENDs to IORef
* more IORef, split pending ENDs to use in one thread
2024-08-29 13:18:12 +01:00
Evgeny
2e7e476f81
smp server: remove "expensive" stats ( #1285 )
2024-08-28 18:20:44 +01:00
Evgeny
2c9ad74599
smp server: batch END responses when subscribed client switches (version 2) ( #1283 )
...
* fix incorrect entity ID for notification subscription END when queue is deleted
* throttle sending ENDs
* fix stats
* clean up
2024-08-28 10:14:41 +01:00
Evgeny Poberezkin
aa60bd6770
use strict Maps, fix stats for sent END batches
2024-08-26 19:35:57 +01:00
Evgeny
16cf5c8628
smp server: stats for END events and for SUB/DEL event batches ( #1281 )
...
* smp server: count queued and sent END events
* fix
* shadowing
* stats for batches
* fix
2024-08-26 14:58:18 +01:00
Evgeny Poberezkin
56986f82c8
6.0.2.0
v6.0.2
2024-08-24 14:54:32 +01:00
Evgeny
53e829a21c
agent: store query errors, reduce slow query threshold to 1ms ( #1277 )
...
* agent: collect query errors stats
* simplify
* test
* use microseconds
* parens
* revert change to track all queries, reduce threshold to 1 ms
2024-08-24 14:51:26 +01:00
Evgeny
ab4acadcc1
agent: fix stuck connection commands when server is not responding ( #1276 )
...
* agent: fix stuck connection commands when server is not responding
* fix
* rename
* test SKEY retry
2024-08-24 13:54:20 +01:00
Evgeny
325e679bc4
ntf server: reduce PING interval to 1 minute, only mark subscriptions with END if it is received by the currently active client ( #1275 )
2024-08-24 11:34:59 +01:00
Evgeny Poberezkin
d81cae712e
Merge branch 'master' into stable
2024-08-23 14:41:15 +01:00
Evgeny Poberezkin
1d22608f86
6.0.1.0
v6.0.1
2024-08-20 18:46:42 +01:00
Evgeny
39f3cf3082
agent: only create notification subscriptions to connections without errors or with temporary errors ( #1270 )
2024-08-20 16:05:50 +01:00
sh
5be81c562f
scripts: update install/update ( #1271 )
2024-08-20 15:57:29 +01:00
Evgeny
2bdda1ff1f
servers: safe compacting of store logs ( #1269 )
...
* servers: safe compacting of store logs
* fix
2024-08-20 13:36:37 +01:00
Evgeny
ac930dff30
smp server: possible race when creating client that might lead to memory leak ( #1260 )
2024-08-20 12:25:58 +01:00
Diogo
1cbf8c0015
agent: support changing user of the new connection ( #1267 )
...
* agent: support new connection user id update
* another way for assertion
* add more tests to setConnUserId
* remove fdescribes
* allow rcv connection to change user id
* add functional test to api
* remove fdescribe
* refactor
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-08-20 10:57:09 +01:00
Evgeny
571d148bdf
agent: do not start delivery workers when there are no messages to deliver ( #1263 )
...
* agent: use weak ThreadId and forkIO in workers instead of async (reduce memory)
* agent: do not start and exit delivery workers when there are no messages to deliver (#1264 )
* agent: exit delivery workers when no messages to deliver
* only start delivery workers when there are pending messages
* fix
* focus test
* enable all tests
* lift
* do not exit workers when there is no work
2024-08-18 21:30:06 +01:00
Evgeny
32a150eb40
agent: enable notifications for all connections ( #1262 )
2024-08-18 14:07:09 +01:00
Evgeny
5ad6e5f2f3
deps: upgrade tls to 1.9 ( #1265 )
...
* deps: use tls-2.0
* roll back RCP "cleanup"
* use tls 1.9
---------
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
2024-08-18 13:55:12 +01:00
Evgeny
f229e135e3
agent: reduce subscription transactions ( #1259 )
...
* agent: reduce subscription transactions
* nub
* remove commented
2024-08-16 10:06:22 +01:00
Evgeny Poberezkin
d15d87c111
Merge branch 'master' into stable
2024-08-11 18:06:11 +01:00
Evgeny Poberezkin
0dd52dc69f
v6.0.0 (6.0.0.8)
v6.0.0
2024-08-09 23:09:09 +01:00
Evgeny
47dd0c4c64
agent: do not send worker crash errors when agent is not active (stopped) ( #1256 )
2024-08-09 21:10:27 +01:00
Evgeny
7762b4d364
reduce the number of STM transactions ( #1255 )
...
* reduce the number of STM transactions
* reduce STM more
* refactor
* remove more
2024-08-09 16:38:46 +01:00
Evgeny Poberezkin
7d8457263b
6.0.0.7
2024-08-08 13:15:01 +01:00
Evgeny
fc6b9c0e1b
agent: stop statistics and cleanup when chat is stopped ( #1251 )
2024-08-07 13:14:09 +01:00
Evgeny Poberezkin
a76e15fd77
6.0.0.6
v6.0.0-beta.6
2024-08-06 12:39:11 +01:00
Evgeny
a017047c52
smp server: fix race when client is marked as subscribed after it is disconnected, preventing its GC ( #1250 )
...
* smp server: fix race when client is marked as subscribed after it is disconnected, preventing its GC
* refactor
2024-08-06 08:17:38 +01:00
Evgeny
f4d1a33ed8
agent: retry loop that resumes subscriptions as soon as agent is moved to foreground, suspend retry loops while agent is suspended ( #1249 )
...
* agent: retry loop that resumes subscriptions as soon as agent is moved to foreground, suspend retry loops while agent is suspended
* reset retry enterval when moving to foreground
* account for network state too
* simplify
* typo
* simplify
2024-08-05 15:09:46 +01:00
Evgeny Poberezkin
03ea151be5
agent: support additional messages for connection in message batches ( #1247 )
...
* agent: support additional messages for connection in message batches
* fix, test
* test 2 connections
* use TVar instead of TMVar for GHC 8.10.7
2024-07-30 17:12:29 +01:00
Evgeny Poberezkin
83f8622b23
6.0.0.5
2024-07-29 21:02:22 +01:00
Evgeny Poberezkin
3753379ae4
agent: support dababase access with high priority for more responsive user actions ( #1248 )
...
* agent: support dababase access with high priority for more responsive user actions
* rename, export
* fix
2024-07-29 18:57:16 +01:00
Evgeny Poberezkin
2de16cfae8
6.0.0.4
v6.0.0-beta.4
2024-07-28 15:03:32 +01:00
Evgeny Poberezkin
5fa3c149e9
smp server: fix server-info, additional stats, allow expiring inactive clients which have prohibit subscriptions only (iOS NSE clients) ( #1237 )
...
* smp server: fix server-info
* fix
* faster saving messages
* remove comment
* move ProhibitSub out of TVar
* subscription stats
* stabilize test
* order
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* more notification stats
* count ntf stats
* update server-info
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-07-25 16:06:40 +01:00
Evgeny Poberezkin
9093c7b120
agent, ntf server: only mark subscriptions as pending that were created by the disconnected client ( #1242 )
...
* ntf server: only mark subscriptions as pending if the disconnected client is current
* add sessionId to subscribed queue
* add sessionId to subscriptions in ntf server agent
* fix
2024-07-25 13:07:28 +01:00
Evgeny Poberezkin
47ae921b86
use strict Map ( #1241 )
2024-07-23 08:27:54 +01:00
spaced4ndy
c605156302
agent: getAgentSubsTotal api ( #1238 )
...
* agent: getAgentSubsTotal api
* move
* export
* count sessions
* simplify
* simplify 2
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-07-22 15:43:38 +01:00
Evgeny Poberezkin
051bf38bc7
agent: remove delays in notification processing, add notification stats ( #1235 )
...
* agent: remove delays in notification processing, add notification stats
* do not replace token after failed check
* more stats
* refactor
* fix
* backwards compatible JSON parsing
* retry deleting subscription on temporary error
* remove attempts to get multiple notification messages
* fix JSON decoding to be backwards compatible
2024-07-22 15:42:34 +01:00
Evgeny Poberezkin
8423c636a8
rename queueId to entId (can be message queue, proxied session and data blob ID to be added) ( #1240 )
2024-07-22 12:01:38 +01:00
Evgeny Poberezkin
cc5732f41f
smp server: stats for commands retrieving messages when notifications are received ( #1236 )
...
* more stats
* fix stats
2024-07-20 14:10:10 +01:00
spaced4ndy
7565ddd91c
agent: initialize ratchet on processing confirmation to support decryption of messages received before allowConnection; return SndQueueSecured from joinConnection, acceptContact ( #1233 )
2024-07-18 19:54:14 +04:00
Evgeny Poberezkin
0de596dbcf
6.0.0.3
v6.0.0-beta.3
2024-07-18 11:05:53 +01:00
Evgeny Poberezkin
e59a098e66
smp server: remove subscriptions from the clients when queues are deleted ( #1234 )
...
* smp server: remove subscriptions from the clients when queues are deleted
* remove ntf subscriptions, update stats
* add GET stats
2024-07-18 10:59:48 +01:00
Evgeny Poberezkin
8d56b0ba85
agent: allow starting only XFTP sending workers ( #1232 )
...
* agent: allow starting only XFTP sending workers
* use Bool param
* flip bool
* update
2024-07-17 13:01:17 +01:00
Evgeny Poberezkin
b40d55c358
6.0.0.2
2024-07-15 20:30:39 +01:00
Evgeny Poberezkin
784d36d691
socks mode encoding ( #1231 )
...
* socks mode encoding
* test delays
* test delay
* unused import
2024-07-15 20:28:24 +01:00