Ingo Oppermann
519f0cfb2b
Fix buffer re-use, use swiss-map backend
2024-10-14 14:26:15 +02:00
Ingo Oppermann
92decc7111
Use global buffer pool where feasible
2024-10-14 10:51:35 +02:00
Ingo Oppermann
719449a4c8
Implement own byte buffer type
2024-10-10 16:35:39 +02:00
Ingo Oppermann
a581f1dbc2
User buffer pool where appropriate
2024-10-10 15:09:50 +02:00
Ingo Oppermann
f97943b275
Move content encoding in the beginning of the middleware chain, update dependencies
2024-10-09 14:25:42 +02:00
Ingo Oppermann
fe2cbd4f60
Add buffer pool for memfs
2024-10-08 14:27:23 +02:00
Ingo Oppermann
0a4118fa38
Reset buffer
2024-10-03 21:30:53 +02:00
Ingo Oppermann
b2a1909d79
Use byte array on stack for copying data, limit size hint
2024-10-03 15:01:00 +02:00
Ingo Oppermann
3756ce4977
Add AppendFileReader to filesystem, allows session logging with less I/O
2024-08-20 17:34:50 +02:00
Ingo Oppermann
1327fd6e21
Add memfs storage based on dolthub's swiss maps
2024-08-20 14:14:47 +02:00
Ingo Oppermann
46950372be
WIP: Optimize copy from io.Reader, allow to suggest file size
2024-07-24 15:40:28 +02:00
Ingo Oppermann
79791d190b
Optimize isDir function on memfs
2024-07-24 12:55:28 +02:00
Ingo Oppermann
7c3bc983a9
Rename lock for currentSize
2024-03-15 15:28:13 +01:00
Ingo Oppermann
91d07c6013
Replace memfs storage backend with a faster one
2024-03-15 14:48:32 +01:00
Ingo Oppermann
0e5c5f52c5
Add lock for accessing files map
2024-03-14 11:18:45 +01:00
Ingo Oppermann
bdcf4bdeb4
Introduce ErrNotExist and ErrExist in io/fs package
2023-07-19 16:42:30 +02:00
Ingo Oppermann
129058e633
Improve FS.List and FS.RemoveList functions, improve CleanupFS
...
The FS.List and FS.RemoveList are up to 42x faster by precompiling the
globbing pattern.
The CleanupFS from restreamer/fs is up to 32x faster in the benchmarks
and cleanup is now only every 5 seconds instead of every second.
2023-06-12 11:36:07 +02:00
Ingo Oppermann
a79cfa0c77
Merge branch 'clusteriam' into vod
2023-06-01 15:16:54 +02:00
Ingo Oppermann
2c5f32fb26
Remove bytes.Buffer pool for memfs in order to be less a memory hog
2023-04-06 21:43:18 +02:00
Ingo Oppermann
d2e5720fa2
Fix limiting part sizes for S3 upload
2023-04-06 12:06:50 +02:00
Ingo Oppermann
83f94e1ef5
Fix concurrent map read and map write
2023-03-24 09:13:12 +01:00
Ingo Oppermann
a692f88b69
Add DELETE /api/v3/fs/:storage endpoint
...
Works similar to the GET endpoint. It has the same query parameter (without
"sort" and "order"). A glob pattern has to be provided. To select all
files, use the glob pattern "/**".
2023-03-17 17:05:56 +01:00
Ingo Oppermann
7e7aadc6cb
Allow to bulk delete files based on ListOptions
2023-03-17 15:56:15 +01:00
Ingo Oppermann
ecfbbe3857
Allow to list files by ranges of size and/or lastmod
...
The listing options are implemented by the query parameters size_min,
size_max, lastmod_start, and lastmod_end, or by the new ListOptions
type. size_min and size_max expect a number of bytes, lastmod_start
and lastmod_end expect a unix timestamp. All values are inclusive.
2023-03-17 15:15:20 +01:00
Ingo Oppermann
b76e6a9b2c
Add Range support for HTTP GET requests on a mounted filesystem
2023-03-08 11:50:59 +01:00
Ingo Oppermann
8755117e92
Add /api/v3/iam/user endpoints
2023-03-07 16:31:58 +01:00
Ingo Oppermann
a3ff16ef30
Add PUT /api/v3/fs endpoint for file operations
2023-03-03 14:26:17 +01:00
Ingo Oppermann
1c04961fc1
Fix tests
2023-02-21 12:57:33 +01:00
Ingo Oppermann
2a3288ffd0
Use abstract filesystem for stores
2023-02-01 16:09:20 +01:00
Ingo Oppermann
f519acfd71
Add S3 storage support
2023-01-31 14:45:58 +01:00
Ingo Oppermann
3e7b1751d5
Add process id and reference glob pattern matching
...
For the API endpoint /v3/process two new query parameter are introduced
in order to list only processes that match a pattern for the id and the
reference: idpattern and refpattern. The pattern is a glob pattern. If
patterns for both are given, the results will be intersected. If you use
other query parameters such as id or reference, they will be applied
after the result of the pattern matching.
2022-08-17 07:55:44 +03:00
Jan Stabenow
eb1cc37456
Add GoSRT & improvements (repo-merge)
...
Commits (Ingo Oppermann):
- Add experimental SRT connection stats and logs
- Hide /config/reload endpoint in reade-only mode
- Add SRT server
- Create v16 in go.mod
- Fix data races, tests, lint, and update dependencies
- Add trailing slash for routed directories (datarhei/restreamer#340 )
- Allow relative URLs in content in static routes
Co-Authored-By: Ingo Oppermann <57445+ioppermann@users.noreply.github.com >
2022-06-23 22:13:58 +02:00
Jan Stabenow
9c0b535199
Add v16.7.2
2022-05-13 19:26:45 +02:00