[#14]: Add local target support #35
No reviewers
Labels
No labels
P0
P1
P2
P3
good first issue
Infrastructure
blocked
bug
config
discussion
documentation
duplicate
enhancement
go
help wanted
internal
invalid
kludge
observability
perfomance
question
refactoring
wontfix
No milestone
No project
No assignees
5 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: TrueCloudLab/xk6-frostfs#35
Loading…
Reference in a new issue
No description provided.
Delete branch "ale64bit/xk6-frostfs:feature/14-local_targets"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Signed-off-by: Alejandro Lopez a.lopez@yadro.com
Close #14
@ -0,0 +1,24 @@
import {uuidv4} from 'https://jslib.k6.io/k6-utils/1.2.0/index.js';
Can we clone it? See #19 for
scenarios/libs
.Also it feels
k6
-related, can't we import it withouthttps
?Possibly, but this is what all examples were doing so I copy-pasted it blindly. Let's refactor it in a separate PR since it touches a bunch of other files.
@ -0,0 +36,4 @@
// ngs maps configuration file names to engine instances, since multiple concurrent instances
// are not possible and it's assumed that each storage instance is used independently. This
// way each VU gets its own client even if the underlying engine is the same.
ngs map[string]*engine.StorageEngine
We do not need to support multiple configuration files here, 1 is enough.
Or do you have any scenario in mind?
done. Turned it into a singleton. (the original reason was that
Connect
is called multiple times and you can't have more than an instance of the engine running).@ -0,0 +26,4 @@
const duration = __ENV.DURATION;
const delete_age = __ENV.DELETE_AGE ? parseInt(__ENV.DELETE_AGE) : undefined;
Current main usecase is PUT/GET, can we delete DELETE-related stuff for now?
I see. But it already works :) no harm in keeping it?
@ -0,0 +112,4 @@
}
export function obj_write() {
if (__ENV.SLEEP_WRITE) {
We need
SLEEP_*
variables for network load, not to overload a system.It is not applicable here (we have no timeout for operations) and is deprecated anyway.
Can we remove this?
done
@ -0,0 +128,4 @@
return;
}
if (obj_registry) {
@anikeev-yadro , do we need registry for local load? The only case is to have GET on a loaded cluster, but then we need also to support merging registries from different nodes (or do we do local load on 1 node only?)
@fyrchik I think we need to keep the registry. We will think about merge in future.
The registry is used also for e.g. delete workload when there are no pregenerated objects. So probably worth keeping it at least for local tests.
30a61f8e2e
tocceccd2ccb
cceccd2ccb
to5d0134219c
5d0134219c
toc7a17bea8f
Object signature was missing. Added in last push.
We have the following errors after PUT objects by local target and start frostfs-storage service:
c7a17bea8f
to0cb5b4dc98