Commit Graph

70 Commits (b5c7c01a11c5a4a73487591aa31846ca9a4e42e1)

Author SHA1 Message Date
Evgenii Stratonikov e5af4112f9 [#136] registry: Apply updates in batch
DCO action / DCO (pull_request) Successful in 1m7s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 2m27s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 3m0s Details
Tests and linters / Tests with -race (pull_request) Successful in 3m19s Details
Tests and linters / Lint (pull_request) Successful in 4m33s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-05-03 13:56:59 +03:00
Evgenii Stratonikov 87ffb551b6 [#133] registry: Implement oneshot selector
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-04-05 13:43:01 +03:00
Dmitrii Stepanov 0a6e51ccc9 [#131] registry: Gofumpt
DCO action / DCO (pull_request) Successful in 1m11s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 2m20s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 2m33s Details
Tests and linters / Lint (pull_request) Successful in 2m55s Details
Tests and linters / Tests with -race (pull_request) Successful in 3m18s Details
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2024-03-20 11:41:03 +03:00
Dmitrii Stepanov 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
Dmitrii Stepanov 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
Dmitrii Stepanov 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
Evgenii Stratonikov 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
Evgenii Stratonikov 636a1e9290 [#114] internal: Resolve linter issues
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-01-12 19:29:16 +03:00
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Dmitrii Stepanov bc47d66316 [#106] xk6: Allow to set max total size in local scenarios
DCO action / DCO (pull_request) Successful in 1m8s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 1m49s Details
Tests and linters / Tests (1.20) (pull_request) Successful in 2m1s Details
Tests and linters / Tests with -race (pull_request) Successful in 3m7s Details
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-12-15 14:07:35 +03:00
Dmitrii Stepanov 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
Anton Nikiforov 26f5262b3d [#90] Support config folder together with config file
Tests and linters / Tests (1.20) (pull_request) Successful in 1m46s Details
Tests and linters / Tests with -race (pull_request) Successful in 2m9s Details
DCO action / DCO (pull_request) Successful in 3m26s Details
Tests and linters / Tests (1.21) (pull_request) Successful in 8m10s Details
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-10-25 16:48:29 +03:00
Dmitrii Stepanov 704c0f06bc [#25] selector: Remove next object timeout
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-07-20 15:01:57 +03:00
Dmitrii Stepanov 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
Denis Kirillov 50e2f55362 [#80] Add dump registry util
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-19 15:57:39 +03:00
Denis Kirillov 77d3dd8d6e [#80] Support parallel multipart
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-07-19 10:44:44 +03:00
Anton Nikiforov ff6814e15d [#72] Add option `--prepare-locally`
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-07-07 13:16:54 +03:00
Anton Nikiforov 56235f5e90 [#72] Update dependencies
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-07-06 12:14:52 +03:00
Dmitrii Stepanov 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
Dmitrii Stepanov 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
Dmitrii Stepanov 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
Alejandro Lopez a1f5738d2f [#77] Use writecache in local scenarios
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-06-30 12:50:42 +00:00
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Alejandro Lopez 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
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Alejandro Lopez 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
Alejandro Lopez 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
Alejandro Lopez de6747fc0f [#14] Add s3 local loader
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-04-13 13:00:38 +00:00
Evgenii Stratonikov cea265a3f8 [#43] generator: Fix initial payload generation
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-24 07:29:32 +00:00
Alejandro Lopez 7efb6315dc [#14]: Add local target support
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-03-23 11:58:11 +00:00
Denis Kirillov 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
Evgenii Stratonikov 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
Evgenii Stratonikov e96d83549b [TrueCloudLab#22] datagen: Allocate buffer once
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-10 06:03:38 +00:00
Alexey Vanin 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
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Evgenii Stratonikov 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
Andrey Berezin b24baf06ca fix format %w
Signed-off-by: Andrey Berezin <a.berezin@yadro.com>
2023-01-11 20:10:57 +03:00
Andrey Berezin 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
Alexey Vanin 171327cdda [#2] Deep rebranding
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2022-12-30 11:05:20 +03:00
Evgenii Stratonikov 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
Alexey Vanin 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