Miroslav Crnic
239b623e56
registry: add unit tests
2025-09-22 15:14:21 +01:00
Francesco Mazzoli
136d55bff0
Cleanup CRC32C code
...
Specifically:
* Extend tables so that they won't wrap around wrongly for big sizes
(we would never hit this since our blocks are at most a few MBs
big).
* Use CRC instructions to compute remainders.
2025-09-21 22:22:22 +01:00
Francesco Mazzoli
93f1143355
Remove dead code
2025-09-18 21:53:37 +01:00
Francesco Mazzoli
01f9d5addf
Improve FUSE, run all tests with it
...
The FUSE driver, up to now, had no way to know when the user had
"explicitly" closed a file. Instead it linked the TernFS file on
flush, which could cause nasty situation. The classic example
is a fork causing the FD to a TernFS file being present in the forked
process, and then the process dying causing a spurious flush.
This commit adds a way to detect when a flush is due to a close(),
which allows us to link the file only in the cases where that happened,
which is a much better heuristic and close to what we do in the kernel
module.
This commit also contains various other improvements to make all tests
pass under FUSE. The big remaining item is changing how files are read
(they're currently read all upfront and then kept in memory).
2025-09-18 18:09:43 +01:00
Joshua Leahy
7a4e466ac6
Make TernFS open source
2025-09-17 18:20:23 +01:00
Miroslav Crnic
6edd7bdd6a
registry
2025-09-17 13:43:42 +01:00
Miroslav Crnic
74d99c92d2
logsdbtests: marked test for disabled functionality as skipped
2025-09-17 10:00:10 +00:00
Miroslav Crnic
c29f3191d8
core: common option parsing
2025-09-17 09:07:20 +00:00
Miroslav Crnic
8c75dd0d89
registry: changes to core/messages
2025-09-17 09:07:14 +00:00
Joshua Leahy
af58e27615
Reference AES back to Intel's ICP library
...
That libray was released under Apache 2.0, whereas the PDF unfortunately
does not provide a license allowing for use of its example code.
2025-09-11 13:12:40 +01:00
Joshua Leahy
4d59472fad
Remove iostream from Common.hpp (iosfwd should do)
2025-09-11 13:12:40 +01:00
Joshua Leahy
752d9c074a
Sink code from XmonAgent.hpp to XmonAgent.cpp
2025-09-11 13:12:40 +01:00
Joshua Leahy
99b56195ec
Replace wyhash with something licensable
...
Unfortunately Lemire's wyhash code was licensed as Apache, we'd rather
have something compatible with GPLv2. This probably a more appropriate
choice anyway.
2025-09-11 13:12:40 +01:00
Joshua Leahy
d72f1b494d
Make C++ functional tests pass
2025-09-11 13:12:40 +01:00
Miroslav Crnic
a4d42be8a4
cdc/shard: fix metrics export
2025-09-09 12:17:17 +00:00
Francesco Mazzoli
4702eca3d5
Label docker images with repository
2025-09-08 10:38:52 +00:00
Miroslav Crnic
92d25d04da
shuckle: rename to registry prepare for replace
2025-09-08 08:59:08 +00:00
Joshua Leahy
65712e178a
Remove encumbered comments from Int64AddOperator
2025-09-04 15:50:27 +00:00
Francesco Mazzoli
2ccdfd1d44
Factor out go files in more meaningful directories
...
Since we're going to add licenses soon
2025-09-04 15:07:35 +00:00
Joshua Leahy
05799dc1ed
Fix gf_tables.py
...
The C file has been manually modified and does not match what is
autogenerated, this brings it back into sync.
2025-09-04 12:43:44 +00:00
Francesco Mazzoli
ac77d763a3
Limit third-party make concurrency
2025-09-03 23:11:12 +01:00
Francesco Mazzoli
4096e73818
Kill all references to internal services
2025-09-03 10:35:40 +00:00
Francesco Mazzoli
110705db8d
EggsFS -> TernFS rename
...
Things not done because probably disruptive:
* kmod filesystem string
* sysctl/debugfs/trace
* metrics names
* xmon instance names
Some of these might be renamed too, but starting with a relatively
safe set.
2025-09-03 09:29:53 +01:00
Miroslav Crnic
dd03ba4614
shard: fix sysmlinks
2025-09-02 11:59:52 +00:00
Miroslav Crnic
f3f5b4b0e2
cdc: dont flush on each log entry
...
We manually control flush of the WAL.
We persist the changes outside the loop by calling flush() with sync.
Since we only send responses after flush we will never send information
about anything that was not persisted.
2025-08-28 08:26:11 +00:00
Francesco Mazzoli
21aa58c4e9
unlikely stuff
2025-08-25 08:43:21 +00:00
Francesco Mazzoli
786073adbf
Do not move entries when printing out error message
2025-08-13 10:45:22 +00:00
Francesco Mazzoli
0c25fbb497
Retry on make directory if mtime is too recent
2025-08-13 10:28:22 +00:00
Miroslav Crnic
11ec289606
udpsocket: dont crash on nic flap
2025-08-10 13:59:24 +00:00
Miroslav Crnic
51c89fb81a
shard: dont validate inode from spans request
2025-07-23 12:21:21 +00:00
Miroslav Crnic
a70a1c4d6a
msgs: prepare for adding location to blockservices
2025-06-26 12:55:00 +00:00
Miroslav Crnic
5043e6d09a
remove unusued appNameSuffix option
2025-06-23 12:03:49 +00:00
Miroslav Crnic
5b924fb272
cdc: log soft unlink edge lock error
2025-06-06 09:40:26 +00:00
Miroslav Crnic
71570f7cdc
cdc: remove alert on rare race with gc
2025-06-05 15:04:29 +00:00
Miroslav Crnic
12b325be3b
shard: stop raising BAD_BLOCK_PROOF alert
2025-06-03 10:55:34 +00:00
Saulius Grusnys
f6d8fec49a
add endpoint to update blockservice path ( #444 )
2025-05-14 17:20:27 +01:00
Miroslav Crnic
8cedd17e6e
msgs: deprecate AllBlockServices to add location
2025-05-14 08:34:21 +00:00
Pavel Rustanovich
a25a8c92ea
dbtools: fix sampled size for multi-location files
2025-05-07 14:18:42 +00:00
Miroslav Crnic
ed145c4ebf
dbtools: gather sample stats for all locations
2025-05-06 07:22:02 +00:00
Miroslav Crnic
ee8306abb3
shard: reduce block service fetch on followers
2025-05-02 08:21:42 +00:00
Miroslav Crnic
7b24bfbac8
shards: increase heartbeat interval
2025-05-02 07:52:00 +00:00
Miroslav Crnic
0c23405295
sharddbtools: fix duplicate failure domain check
2025-04-17 20:02:29 +00:00
Miroslav Crnic
b01268e638
shardbtools: sample-files fix
2025-04-07 13:17:44 +00:00
Miroslav Crnic
c53af171e5
make scratch file gc-able on release
...
* shard: support ScrapTransientFile
* scratch: scrap file on release
2025-03-18 12:49:44 +00:00
Miroslav Crnic
d3918a2c60
shard: no deadline when making file transient
2025-03-18 11:34:16 +00:00
Miroslav Crnic
25b2cd965e
shard: transient file deadline part of entry
2025-03-18 10:03:08 +00:00
Miroslav Crnic
1e2788f321
shard: always apply entries in proxy location
2025-02-04 09:19:59 +00:00
Miroslav Crnic
9326879c5f
shard: increase proxied requests timeout
2025-02-03 10:31:21 +00:00
Miroslav Crnic
3f3ad038e7
shard: log slow proxied requests
2025-01-30 15:54:05 +00:00
Miroslav Crnic
1075b61885
shard: forward response for applied requests
2025-01-28 16:28:55 +00:00