Commit Graph

77 Commits (de6747fc0f2ec5291cd81ea5898299757f72c0b3)

Author SHA1 Message Date
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
Andrey Berezin 6832771973 [#47] Raise default STREAM_TIMEOUT to 60s
Signed-off-by: Andrey Berezin <a.berezin@yadro.com>
2023-04-07 12:01:50 +03:00
Evgenii Stratonikov ef6f5bdf48 [#45] scenarios: Support ENV file in local.js
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-24 09:08:42 +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
Elizaveta Chichindaeva 220a822377 [#39] Add bug label; edit feature request
Add bug label in the bug report template. Edit feature request

Signed-off-by: Liza <e.chichindaeva@yadro.com>
2023-03-24 06:22:26 +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
Evgenii Stratonikov 47b6d0fb8b [#37] scenarios: Make run_scenarios.md render properly
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-21 17:58:05 +03: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 c5a250618c [#33] scenarios: Fix imports
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-03-13 12:31:17 +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
Andrey Berezin 614bee3581 [#19] Add json output for k6 scenarios
This is required for autotests to be able to parse summaries and do checks

Signed-off-by: Andrey Berezin <a.berezin@yadro.com>
2023-03-01 15:12:23 +03:00
Evgenii Stratonikov bed807b09f [TrueCloudLab#17] .github: Fix CODEOWNERS
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-02-28 16:37:04 +03:00
Evgenii Stratonikov 9212cefb0e [#9] scenarios: Unify error log entries
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-02-28 14:18:53 +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
Stanislav Bogatyrev ce4595fca1 Change logo
Signed-off-by: Stanislav Bogatyrev <s.bogatyrev@yadro.com>
2023-01-07 18:20:28 +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
Andrey Berezin d2541486ae Add wallet params since -g flag is deprecated
Signed-off-by: Andrey Berezin <a.berezin@yadro.com>
(cherry picked from commit 3120b9bd7d85b8170a14c153c08b956a31aa8c70)
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
a.chetaev 9501e300c1 Add documentation for new scripts
Signed-off-by: a.chetaev <alex.chetaev@gmail.com>
2022-11-18 17:36:29 +03:00
a.chetaev 22e97339c9 Add script to check policy complience
Signed-off-by: a.chetaev <alex.chetaev@gmail.com>
2022-11-18 17:36:29 +03:00
a.chetaev ed25e553b2 [#38] Move common function to helpers for preset
Signed-off-by: a.chetaev <alex.chetaev@gmail.com>
2022-11-18 11:44:06 +03:00
Vladislav Karakozov 97fbe9af82 [#37] run_scenarios.md: K6 doc updates
Signed-off-by: Vladislav Karakozov <v.karakozov@yadro.com>
2022-11-18 11:42:47 +03:00
a.chetaev 9c08b45619 [#34] Add script to check preset objects state
Signed-off-by: a.chetaev <alex.chetaev@gmail.com>
2022-11-15 19:38:24 +03:00
Evgenii Stratonikov aa1cbb957c [#32] scenarios: Log object info on errors
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2022-11-11 10:26:27 +03:00
Evgenii Stratonikov 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
Pavel Karpy 1434d95e81 [#30] go.mod: Update neofs-sdk
It fixes panic using go 1.19+.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Pavel Karpy dbfadc83d0 [#30] preset: Print container progress
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Pavel Karpy 70d4b1db9d [#30] grpc: Do not start deleters without registry
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Pavel Karpy 0e34bf64bd [#30] presets: Pretty JSON files
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Pavel Karpy 3fbaf0753d [#30] gitignore: Add dir for presets
Could be useful for local runs

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Pavel Karpy af840ed376 [#30] preset: Create missing files
Also, stop if none of the container creation commands succeeded.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Pavel Karpy 0dda9f17fa [#30] preset: Stop execution if no new containers were created
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Pavel Karpy 0088fbd7d6 [#30] preset: PEP 8 refactor
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-03 13:11:50 +03:00
Vladimir Domnich eaff41c055 Fix misprint in docs
Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2022-10-21 08:54:56 +03:00
Vladimir Domnich 258e448dbf Fix grpc preset
Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2022-10-17 14:45:35 +03:00
anatoly@nspcc.ru ea604ee8ee Use separate sleep intervals for VUs
To fine-tune read/write/delete load we need to have separate sleep
intervales for readers/writers/deleters.

The changes were originally authored by anatoly@nspcc.ru <anatoly@nspcc.ru>

Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2022-10-17 14:30:24 +03:00
Vladimir Domnich 7875aa9c02 [#23] Remove invalid variable from http scenario
Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2022-10-13 15:43:53 +03:00
Vladimir Domnich 37e27f6791 [#23] Implement deletion of objects
1. Added simple lock mechanism to reset obj selector. This prevents
   most of concurrency issues when multiple VUs try to reset selector.
2. Added logic to delete objects to grpc and s3 scenarios.
3. Added registry support to http scenario.
4. Deletion logic was not implemented for http scenario, because
   http gateway does not provide web-method to delete objects.

Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2022-10-03 17:34:20 +03:00
Vladimir Domnich 89faf927fb [#21] Improve iteration logic in obj selector
1. Implement reset method that allows to start iteration from beginning of
   the registry. This allows to revisit objects in scenarios like object
   deletion.
2. Add filter structure that allows to select objects based on age.

Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2022-09-30 15:18:45 +03:00
Vladimir Domnich b1ec6d562c [#19] Stop object iteration after all objects were processed
At the moment we don't need logic that swings back to beginning of registry when
all objects have been processed. So, for now we can stop iterating and return an
error when selector reaches the end of registry.

Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2022-09-23 13:36:27 +03:00