600 Commits

Author SHA1 Message Date
Ingo Oppermann
3e842f2b2f
Fix cleanup path becomes relative when prepended with domain 2023-07-23 20:39:49 +02:00
Ingo Oppermann
bc76b4615d
Fix redeploying process when locally deleted 2023-07-23 20:33:18 +02:00
Ingo Oppermann
6789dbb783
Fix potential nil dereference 2023-07-23 16:15:01 +02:00
Ingo Oppermann
eea1e2e517
Give reason why session validation failed 2023-07-23 16:14:09 +02:00
Ingo Oppermann
5faf1825a6
Remove unrequired fields from session token, parametrize TTL 2023-07-21 15:49:57 +02:00
Ingo Oppermann
4b79576340
Fix proper check of allowed remote values in session token 2023-07-21 15:40:19 +02:00
Ingo Oppermann
a8fbdd288f
Fix missing ? in path in session log 2023-07-21 15:39:41 +02:00
Ingo Oppermann
2844d2d7a2
Split Lock type into its own file 2023-07-21 15:38:43 +02:00
Ingo Oppermann
3a13bbf88b
Update core client package 2023-07-21 11:50:16 +02:00
Ingo Oppermann
a193e93b94
Update core client package 2023-07-21 10:31:33 +02:00
Ingo Oppermann
ff2b7fe054
Add cache for file to node relation in cluster proxy 2023-07-20 20:51:20 +02:00
Ingo Oppermann
11e28a8d37
Fix event filter
If a filter provides a k/v map, then the keys must exist in the event,
otherwise it's not a mach.
2023-07-20 15:43:28 +02:00
Ingo Oppermann
e6391b0b7b
Replace polling with asking other nodes for files in proxy
Polling has the drawback, that it's usually delayed and can lead to
404 responses even though the files would be available on another
node. With asking, this problem doesn't exist but it may lead to
more internal requests and a bit higher latency.
2023-07-20 15:17:03 +02:00
Ingo Oppermann
910c727585
Fix updating reference affinity map 2023-07-20 11:35:16 +02:00
Ingo Oppermann
97a8e0f815
Use same permission mask 2023-07-19 17:41:02 +02:00
Ingo Oppermann
1f24ea1b00
Check for correct error 2023-07-19 17:18:58 +02:00
Ingo Oppermann
bdcf4bdeb4
Introduce ErrNotExist and ErrExist in io/fs package 2023-07-19 16:42:30 +02:00
Ingo Oppermann
a03b38c4a6
Fix restoring empty session history 2023-07-19 16:25:27 +02:00
Ingo Oppermann
2f85f78c38
Move map initialization to an earlier point 2023-07-19 13:24:28 +02:00
Ingo Oppermann
c1b47036d6
Fix error if history file doesn't exist 2023-07-19 13:17:55 +02:00
Ingo Oppermann
165db9dc96
Add info log for mounted filesystems 2023-07-19 10:34:59 +02:00
Ingo Oppermann
95a2ec5667
Allow to filter events by level and message 2023-07-18 21:51:07 +02:00
Ingo Oppermann
9358ab79ed
Update dependencies 2023-07-17 21:52:15 +02:00
Ingo Oppermann
8a8ff6d4f4
Add LimitMode and Resources.CPU.IsThrottling to process state 2023-07-17 21:45:19 +02:00
Ingo Oppermann
5b075ed54b
Update swagger docs 2023-07-17 20:59:17 +02:00
Ingo Oppermann
8123b09dcf
Fix providing correct last_contact value for node 2023-07-17 20:55:29 +02:00
Ingo Oppermann
cd31893286
Update dependencies 2023-07-17 17:00:42 +02:00
Ingo Oppermann
0519059f3d
Add CoreID field 2023-07-17 17:00:20 +02:00
Ingo Oppermann
34db225eb0
Return map of nodes 2023-07-17 15:39:03 +02:00
Ingo Oppermann
bc04bb2df8
Simplify rebalancing 2023-07-17 15:10:47 +02:00
Ingo Oppermann
02079e30c5
Fix checking for nil-value 2023-07-17 12:48:17 +02:00
Ingo Oppermann
cefd35f7da
Refactor cluster.About() data 2023-07-14 11:22:08 +02:00
Ingo Oppermann
fd7354286e
Extract functions, draft strategy for starting a process 2023-07-12 21:02:46 +02:00
Ingo Oppermann
c8ab8567d9
Return error if onBeforeStart fails 2023-07-12 20:56:03 +02:00
Ingo Oppermann
dedbfa099c
Fill resource limits with configured limits 2023-07-12 16:12:10 +02:00
Ingo Oppermann
520683138d
Add converter function for store.Process 2023-07-12 14:35:29 +02:00
Ingo Oppermann
fe715adbce
Split cluster handler into smaller files 2023-07-12 14:18:01 +02:00
Ingo Oppermann
c0c118340b
Fix updating the process-node map 2023-07-12 12:22:37 +02:00
Ingo Oppermann
51d8b30e8f
Fix MaxCPU and MaxMemory semantics
If a limit of 0 (or negative) is given for both cpu and memory, then
no limiting will be triggered. If any value between 1 and 100 (inclusive)
is given, then limiting will be triggered when that limit is reached.

I.e. giving a limit of 100 doesn't not mean unlimited.
2023-07-12 11:53:39 +02:00
Ingo Oppermann
519f39b217
Fix returning wrong value for HasLimits 2023-07-12 11:38:40 +02:00
Ingo Oppermann
72d56be9af
Write stop/kill reason to process parser 2023-07-12 10:48:33 +02:00
Ingo Oppermann
0f08480366
Fix race condition 2023-07-12 10:47:29 +02:00
Ingo Oppermann
62fdf8e370
List undeployed processes 2023-07-11 22:38:33 +02:00
Ingo Oppermann
69ffec6b6a
Fix writing empty error message 2023-07-11 22:37:40 +02:00
Ingo Oppermann
3883696034
Write deploy errors to cluster DB 2023-07-11 15:55:46 +02:00
Ingo Oppermann
0f06b8b5a0
Add /cluster/transfer/:id endpoint to transfer leadership to another node 2023-07-11 14:26:54 +02:00
Ingo Oppermann
d04254c891
Add /cluster/db/map/process endpoint 2023-07-11 10:57:56 +02:00
Ingo Oppermann
5aa0a880de
Remove pressure from raft while acquiring a lock 2023-07-10 21:05:07 +02:00
Ingo Oppermann
be79a4c327
Add mutex for allowStale variable 2023-07-10 20:50:42 +02:00
Ingo Oppermann
b5976f37f0
Start cluster after core API has been started
The core API will be started before the cluster is started in order to
access the cluster endpoints during a cluster upgrade. If TLS is enabled,
possibly stale certificates are loaded into the cache. Otherwise the
leader has to be contacted via the cluster API which might have changed.
2023-07-10 16:24:08 +02:00