0a6e51ccc9
[ #131 ] registry: Gofumpt
...
DCO action / DCO (pull_request) Successful in 1m11s
Tests and linters / Tests (1.21) (pull_request) Successful in 2m20s
Tests and linters / Tests (1.20) (pull_request) Successful in 2m33s
Tests and linters / Lint (pull_request) Successful in 2m55s
Tests and linters / Tests with -race (pull_request) Successful in 3m18s
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2024-03-20 11:41:03 +03:00
0c4e2665ba
[ #131 ] registry: Allow to create cycled/forward selectors
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2024-03-20 11:40:49 +03:00
e9edca3e79
[ #119 ] metrics: Refactor custom metrics
...
Add `data` metrics to measure payload rate.
Rename `total` metrics to `success`, because these metrics count
success operations count but not total operations count.
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2024-01-26 10:39:26 +03:00
604982de3e
[ #119 ] metrics: Allow to add custom tags
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2024-01-26 10:31:54 +03:00
029af2a865
[ #114 ] local: Fix payload type after recent refactoring
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-24 16:15:24 +00:00
636a1e9290
[ #114 ] internal: Resolve linter issues
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-12 19:29:16 +03:00
d8af19cc83
[ #114 ] datagen: Remove calcHash parameter in GenPayload()
...
Hash calculation is now done on-demand with a method call.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-12 19:29:16 +03:00
4544ec616b
[ #114 ] datagen: Allow to generate streaming payloads
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-12 19:29:16 +03:00
74121bb387
[ #114 ] datagen: Refactor payload generation
...
Return an interface which can be converted to `io.Reader` as well as
report payload size and hash.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-12 19:29:16 +03:00
bc47d66316
[ #106 ] xk6: Allow to set max total size in local scenarios
...
DCO action / DCO (pull_request) Successful in 1m8s
Tests and linters / Tests (1.21) (pull_request) Successful in 1m49s
Tests and linters / Tests (1.20) (pull_request) Successful in 2m1s
Tests and linters / Tests with -race (pull_request) Successful in 3m7s
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-12-15 14:07:35 +03:00
eeededfc18
[ #106 ] go.mod: Update frostfs-node version
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-12-14 11:35:09 +03:00
26f5262b3d
[ #90 ] Support config folder together with config file
...
Tests and linters / Tests (1.20) (pull_request) Successful in 1m46s
Tests and linters / Tests with -race (pull_request) Successful in 2m9s
DCO action / DCO (pull_request) Successful in 3m26s
Tests and linters / Tests (1.21) (pull_request) Successful in 8m10s
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-10-25 16:48:29 +03:00
704c0f06bc
[ #25 ] selector: Remove next object timeout
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-07-20 15:01:57 +03:00
3c26e7c917
[ #25 ] xk6: Read objects from registry for gRPC tests
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-07-20 10:01:34 +03:00
50e2f55362
[ #80 ] Add dump registry util
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-19 15:57:39 +03:00
77d3dd8d6e
[ #80 ] Support parallel multipart
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-19 10:44:44 +03:00
ff6814e15d
[ #72 ] Add option --prepare-locally
...
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-07-07 13:16:54 +03:00
56235f5e90
[ #72 ] Update dependencies
...
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-07-06 12:14:52 +03:00
f633f9a64a
[ #79 ] client: Remove bufSize field
...
Use constant value instead.
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-07-06 11:27:33 +03:00
42f1881580
[ #79 ] object put: Add chunk size parameter
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-07-06 11:27:33 +03:00
4972bb928e
[ #79 ] xk6: Update node and SDK-Go
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-07-05 15:37:06 +03:00
a1f5738d2f
[ #77 ] Use writecache in local scenarios
...
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-06-30 12:50:42 +00:00
ba04c682cb
[ #13 ] Allow to use english text in the payload
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-06-27 11:14:05 +00:00
1025e80f11
[ #65 ] go.mod: Update dependencies
...
See https://github.com/grafana/k6/pull/3075/ , it is not yet in any
release.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-05-24 11:41:02 +03:00
4aa9a359b5
[ #64 ] registry: Delete object from the old bucket
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-05-23 16:02:03 +03:00
5a1191a1ab
[ #20 ] Add pprof extension with support for cpu and mem
...
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-05-18 15:08:33 +00:00
e71ac35c36
[ #42 ] registry: Do not create selectors without status filters
...
Should allow to catch bugs in scenarios earlier.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-05-15 16:08:26 +03:00
b66b5a2f37
[ #42 ] registry: Optimize Count() for ObjSelector
...
It is the heaviest function executing on setup stage.
The culprit is the linear dependency between its execution
time and the amount of objects in registry. The solution is to store
object by status. While the optimization doesn't work for objects with
no status, it is currently provided by all scenarios.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-05-15 16:08:26 +03:00
22d7996f79
[ #42 ] registry: Optimize ObjectInfo
marshaling
...
1. Get rid of JSON in the database.
2. Store `CreatedAt` as int64. It decreases JSON marshaling time by
about ~25% with no changes for native scheme.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-05-15 16:08:26 +03:00
81b7d3f536
Check NOFILE limit before creating local storage engine
...
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-04-21 14:01:30 +03:00
5ab7cfed7c
[ #52 ] Add debug_logger flag to local scenarios
...
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-04-19 10:44:45 +03:00
de6747fc0f
[ #14 ] Add s3 local loader
...
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-04-13 13:00:38 +00:00
cea265a3f8
[ #43 ] generator: Fix initial payload generation
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-24 07:29:32 +00:00
7efb6315dc
[ #14 ]: Add local target support
...
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-03-23 11:58:11 +00:00
ed58333aba
[ #11 ] Support reading env variables from file
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-03-15 09:13:34 +03:00
b1f7b29848
[TrueCloudLab#22] datagen: Use local randomness source
...
`math/rand.Read` is deprecated.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-10 06:03:38 +00:00
e96d83549b
[TrueCloudLab#22] datagen: Allocate buffer once
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-10 06:03:38 +00:00
e82b1ebd1d
Rename package name
...
Due to source code relocation from GitHub.
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-03-07 17:53:17 +03:00
4ea872d6c3
[ #9 ] logging: Make logger more functional
...
Previous iteration was bad, because `Logger` instance was shared and
endpoints in different VUs were overriding each other.
New interface is much better, it supports logger extension in any
context with arbitrary fields.
```
const l = logging.new().withFields({endpoint: "my endpoint"});
...
l.withField("cid", container).info("not found");
```
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-02-28 14:18:53 +03:00
4a2b01f5a4
[ #8 ] internal: Add full timestamp and endpoint to logs
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-02-03 17:12:26 +03:00
e52a315752
[ #50 ] Use native.connect
timeouts everywhere
...
Also, use defaults from the SDK itself, allow user to provide 0.
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-02-03 17:12:26 +03:00
b24baf06ca
fix format %w
...
Signed-off-by: Andrey Berezin <a.berezin@yadro.com>
2023-01-11 20:10:57 +03:00
43fddcb28b
sys.exit with exit codes if no containers/objects during preset
...
correct statistics - total counts of request contains only successful requests.
add endpoint to grpc connection error message
added ability to change workers count during preset
Signed-off-by: Andrey Berezin <a.berezin@yadro.com>
2022-12-30 17:30:50 +03:00
171327cdda
[ #2 ] Deep rebranding
...
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2022-12-30 11:05:20 +03:00
88b2129b54
[ #50 ] Allow to set timeouts for native scenario
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
(cherry picked from commit 1337eed6df45492f1045541021e8b14a42c5a286)
2022-12-29 17:35:13 +03:00
Denis Kirillov
23feb6c937
[ #44 ] Add params to disable tls check on s3
...
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
(cherry picked from commit cb21178ae7e1ba6e956b3b3ea0a845fe6b0ca48a)
2022-12-29 17:35:13 +03:00
966fee0e55
[ #1 ] Build K6 extension with FrostFS dependencies
...
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2022-12-22 11:13:47 +03:00
Denis Kirillov
f6695f3b4c
[ #29 ] Add delete metrics
...
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-12-02 13:05:04 +03:00
883c3c259a
[ #32 ] registry: Allow to customize cache size for DELETE
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2022-11-11 10:26:27 +03:00
Pavel Karpy
c43f73704e
[ #30 ] grpc: Cache object getters
...
Includes:
1. Logic simplification: no need to call `ObjSelector.Reset` from JS code,
everything could be done inside the Go code. Remove unused mutexes.
2. Do not handle object twice ever: Once handled, any error is expected to be
logged on the JS side and never be handled again. It solves "already removed"
error.
3. Object caching: no need to call bolt's `View` on every object removal: it
blocks other calls and slows down the execution. Read 100 objects (or less if
not available yet), cache them and send to buffered channel.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00