Evgeny Poberezkin
0cabe0690b
5.4.0.2: xftp 1.1.1, ntf 1.6.1
2023-09-10 17:44:37 +01:00
Evgeny Poberezkin
84ce037867
extend SMP protocol to allow creating new queues without subscriptions ( #839 )
...
* Trace auto-subs flag
* Replace Bools with SubscriptionMode
* Handle SMOnlyCreate
* Wire remaining todos
* Update tests and fix
* Bump protocol level
* Apply suggestions from code review
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
* Scrub needs_sub from agent DB
* Scrub a few more needSubs from the agent api
* change API, fix test
* agent: do not subscribe to queue when creating reply queue
* fix encoding
* WIP: SMOnlyCreate test
* Add SM guard for confirmQueue
Allows the test case to pump the allowConnection
reply without getting PROHIBITED.
* Remove tracing
* add noMessages, remove unnecessary getConnectionMessage from test
* add sending messages to the test
---------
Co-authored-by: IC Rainbow <aenor.realm@gmail.com >
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
2023-09-10 17:07:19 +01:00
Evgeny Poberezkin
504465f8e2
xftp: add 64kb file chunk ( #842 )
...
* xftp: add 64kb file chunk
* disable chunk size 64kb in the agent
* revert rename
2023-09-08 13:31:11 +01:00
spaced4ndy
351f42650c
export isCompatibleRange function ( #841 )
2023-09-06 15:42:47 +04:00
Evgeny Poberezkin
980e5c4d1e
agent: add debugging info ( #840 )
2023-09-04 22:02:12 +01:00
Evgeny Poberezkin
17a1a911d8
import stateTVar
2023-09-01 22:24:53 +01:00
Evgeny Poberezkin
5dc3d739b2
agent: support encrypted local files ( #837 )
...
* agent: support encrypted local files
* migration, update store, api
* tests, fix
* use CF.plain
2023-08-31 22:43:58 +01:00
Evgeny Poberezkin
4c0b8a31d2
agent: create parent folders when creating the database
2023-08-26 16:53:31 +01:00
Alexander Bondarenko
4eb3b8e113
server: add env lookups for smp server paths ( #817 )
...
* Add env lookups for smp server paths
Allows running smp-server without touching system paths.
Can be helpful for running multiple instances.
* allow empty env var values
* diff
* fix
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2023-08-26 15:54:26 +01:00
Evgeny Poberezkin
066d91b0f5
agent: export SubInfo
2023-08-25 09:20:12 +01:00
Evgeny Poberezkin
414b019ad4
agent: function to debug agent subscriptions ( #834 )
...
* agent: function to debug agent subscriptions
* add Show instances
2023-08-24 23:19:48 +01:00
Evgeny Poberezkin
b001b748db
agent: rename functions, remove unused code, stabilize tests ( #830 )
...
* agent: rename functions, stabilize tests
* test pattern match
2023-08-24 19:52:58 +01:00
Evgeny Poberezkin
ec268e2006
agent: wait while agent is in foreground to continue xftp operation ( #831 )
2023-08-24 19:11:44 +01:00
Evgeny Poberezkin
a97c7da48a
changelog
2023-08-23 12:06:39 +01:00
Alexander Bondarenko
fcce544488
Pin GHC version in cabal.project ( #815 )
...
Allows building without switching user-preferred version.
2023-08-23 11:59:25 +01:00
Evgeny Poberezkin
a302b601ea
docs: comment in the protocol doc
2023-08-21 17:41:30 +01:00
Evgeny Poberezkin
44abb90c63
agent: fix async join to avoid sending HELLO again after restart ( #829 )
...
* agent: fix async join to avoid sending HELLO again after restart
* update test
* add callstack to test
* improve test
2023-08-21 14:35:46 +01:00
Evgeny Poberezkin
d09adb5cd6
agent: wait for db (Revert Revert db error busy treatments ( #796 ) ( #808 )) ( #828 )
...
* Revert "Revert "db error busy treatments (#796 )" (#808 )"
This reverts commit 82aec2cd8f .
* update test
* combine pragmas
2023-08-21 09:06:51 +01:00
Evgeny Poberezkin
b329eb9a86
agent: fix async JOIN ( #827 )
...
* agent: fix async JOIN
* refactor
2023-08-20 18:45:16 +01:00
Evgeny Poberezkin
40e6d16e48
client: streaming batched commands, refactor ( #826 )
2023-08-19 16:11:05 +01:00
Evgeny Poberezkin
f3111f4559
client: batch while sending commands - wait for responses before sending the next batch ( #825 )
...
* client: batch while sending commands - wait for responses before sending the next batch
* fix comments
* fix tests
2023-08-18 21:02:47 +01:00
spaced4ndy
cf2a17b80c
agent: track count and average time for slow queries ( #824 )
2023-08-16 20:14:27 +04:00
spaced4ndy
e586bef57a
agent: add indexes to improve slow queries performance ( #823 )
2023-08-16 10:29:09 +04:00
Evgeny Poberezkin
e2065ab352
agent: track slow SQL queries ( #822 )
...
* agent: track slow SQL queries
* add executeMany
* reduce threshold for slow queries to 50ms
2023-08-12 18:18:10 +01:00
Evgeny Poberezkin
43f283471c
Merge branch 'stable'
2023-08-12 08:20:50 +01:00
Evgeny Poberezkin
a1e56979b7
Merge commit 'fdbfe0e8d159f394f6eb0f5168620da8694033cd' into stable
2023-08-12 08:20:03 +01:00
Evgeny Poberezkin
6446edd1a6
Merge branch 'stable'
2023-08-12 08:19:25 +01:00
Evgeny Poberezkin
82aec2cd8f
Revert "db error busy treatments ( #796 )" ( #808 )
...
This reverts commit 1afcefa5e7 .
2023-08-09 12:24:03 +01:00
Evgeny Poberezkin
fdbfe0e8d1
5.3.0.1
v5.3.0
2023-07-22 13:21:53 +01:00
spaced4ndy
e81f3b5529
add indexes ( #809 )
2023-07-22 13:20:49 +01:00
Evgeny Poberezkin
6314bb1706
agent: partially fix message queries, debug message times ( #810 )
...
* agent: partially fix message queries, debug message times
* fix more joins
2023-07-22 13:00:25 +01:00
Evgeny Poberezkin
c54be32135
Revert "agent: expire messages on quota errors ( #801 )" ( #807 )
...
This reverts commit 3fee468051 .
2023-07-22 09:16:06 +01:00
spaced4ndy
7e2b309450
migration to delete expired messages ( #801 is suspected to have caused temporary traffic increase due to flood of non expired messages) ( #806 )
2023-07-20 16:15:33 +04:00
spaced4ndy
4ed40fa5d5
enable a test in CI ("should resume sending file after restart") ( #800 )
2023-07-17 20:33:25 +04:00
Evgeny Poberezkin
de95119ca6
5.3.0.0
v5.3.0-beta.0
2023-07-15 13:35:09 +01:00
Evgeny Poberezkin
4fae7dcaee
server: control port ( #804 )
...
* server: control port
* do not remove messages when saving via control port
* remove unused record fields
* fix tests
2023-07-15 13:33:00 +01:00
Evgeny Poberezkin
d989d11478
server: refactor restoring store log ( #803 )
2023-07-15 10:37:08 +01:00
Evgeny Poberezkin
1901e96ecc
server: make main SMP server queues unbounded ( #802 )
2023-07-14 21:07:45 +01:00
Evgeny Poberezkin
3fee468051
agent: expire messages on quota errors ( #801 )
2023-07-14 18:13:54 +01:00
Evgeny Poberezkin
58cb2855d2
agent: delivery receipts ( #752 )
...
* rfc: delivery receipts
* update doc
* update rfc
* implementation plan, types, schema
* migration, update types
* update types
* rename migration
* export MsgReceiptStatus, JSON encoding
* update rfc, schema
* correction
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* skeleton of the implementation
* more implementation (some tests fail)
* more code, 1 test fails
* fix encoding
* refactor
* refactor
* test, fix
* only send receipts in v3+, test
* flip condition
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* flip condition
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
* agent version 4 required to send receipts
* fix test
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2023-07-13 22:33:48 +01:00
Evgeny Poberezkin
745a144e0c
5.2.1 (ntf 1.5.1, xftp 1.0.1) ( #799 )
v5.2.1
2023-07-13 19:23:06 +01:00
Evgeny Poberezkin
4c6c436e7f
resubscribe in batches in Client.Agent ( #798 )
...
* resubscribe in batches in Client.Agent
* fix test
2023-07-12 07:35:38 +01:00
Evgeny Poberezkin
b61e3b5f95
server: disable transport timeout ( #793 )
2023-07-11 19:43:31 +01:00
Evgeny Poberezkin
58dbc197ce
increase TCP timeout for clients ( #797 )
2023-07-11 18:54:14 +01:00
spaced4ndy
1afcefa5e7
db error busy treatments ( #796 )
2023-07-11 20:19:20 +04:00
Evgeny Poberezkin
532cd2f39c
fix allFinally
2023-07-09 21:36:23 +01:00
Evgeny Poberezkin
2f5c646e55
test with catchError/tryError
2023-07-09 18:38:44 +01:00
Evgeny Poberezkin
f76a5ca5b6
agent: catch IO errors correctly in MonadError ( #795 )
...
* agent: catch IO errors correctly in MonadError
* correction
* correction
* utils
* agentFinally to catch IO exceptions in ExceptT
* rename
* remove, inline
* rename utils
* utils unit test
* test to show catch and finally problems
* tryAllErrors
* enable all tests
2023-07-09 18:04:45 +01:00
spaced4ndy
f2657f9c0b
add crypto error to RSYNC event ( #794 )
2023-07-05 18:14:51 +04:00
Evgeny Poberezkin
fe22d9b299
agent api to reconnect all servers ( #792 )
2023-07-04 22:54:45 +01:00