Мария Малыгина
edc6e31223
fail if concurrencty < 1
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-18 12:21:41 +03:00
Мария Малыгина
fb7bc09e79
fail test if concurrency = 0
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-18 12:03:22 +03:00
Мария Малыгина
ad5698c255
format code
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 18:32:18 +03:00
Мария Малыгина
a4c2d29eff
add multipart description to scenarios.md
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 17:59:21 +03:00
Мария Малыгина
6b7a27df4f
Fix
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:33:51 +03:00
Мария Малыгина
88ae8f47a3
Fix body value
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:28:46 +03:00
Мария Малыгина
00df55340a
Fix
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:26:59 +03:00
Мария Малыгина
6f01a038e5
Fix setting options
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:25:14 +03:00
Мария Малыгина
4af4498e32
Fix missing import
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:19:52 +03:00
Мария Малыгина
c17ff97439
Fix missing return
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:17:32 +03:00
Мария Малыгина
1443da627c
Fix spelling mistake
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:16:26 +03:00
Мария Малыгина
46d5c647c0
Fix spelling mistake
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 16:13:34 +03:00
Мария Малыгина
d1c6425c92
Support parallel multipart upload
...
Signed-off-by: Мария Малыгина <m.malygina@yadro.com>
2023-07-17 15:46:53 +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
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
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