Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change crossdock end-to-end test to use "fast to start" storage #1221

Closed
Tracked by #3835
yurishkuro opened this issue Nov 27, 2018 · 6 comments · Fixed by #3843
Closed
Tracked by #3835

Change crossdock end-to-end test to use "fast to start" storage #1221

yurishkuro opened this issue Nov 27, 2018 · 6 comments · Fixed by #3843
Labels
help wanted Features that maintainers are willing to accept but do not have cycles to implement

Comments

@yurishkuro
Copy link
Member

yurishkuro commented Nov 27, 2018

Requirement - what kind of business use case are you trying to solve?

Make crossdock end-to-end tests reliable and fast(er).

Problem - what in Jaeger blocks you from solving the requirement?

The objective of end-to-end test is to spin up all Jaeger containers and test span collection end to end. However, collector and query service need an external shared storage, so we're using Cassandra backend, which is slow to come up and often causes tests to fail.

Proposal - what do you suggest to solve the problem or improve the existing situation?

Use in-memory storage by implementing it as a standalone service. The Cassandra storage backend implementation is already being tested via integration separate tests, so not needed in end-to-end test.

Any open questions to address

We could use remote gRPC storage mechanism introduced in #3383.

@isaachier
Copy link
Contributor

OK I believe this is a better long-term solution. Will close my PR so that this issue can be resolved instead.

@bhavin192
Copy link

I think this can be closed as #1762 is fixed.

@yurishkuro
Copy link
Member Author

No, #1762 was about crossdock tests in the client repos, and they now use all-in-one. For end-to-end tests we want to use separately built components (mirroring prod deployment).

@albertteoh
Copy link
Contributor

What do folks think about implementing this as a BadgerDB-backed GRPC storage plugin? I thought since we've got the logic for reading/writing spans to Badger in the Jaeger codebase, it should help reduce the effort involved.

This also unlocks a better local dev experience, not having to start cassandra/ES, which are a little heavy-weight.

@yurishkuro
Copy link
Member Author

I don't think it would work since badger is still single process even via grpc plugin. What we need is a fully remote storage.

@yurishkuro yurishkuro added the help wanted Features that maintainers are willing to accept but do not have cycles to implement label Dec 10, 2021
@yurishkuro
Copy link
Member Author

Implementing this in #3835

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Features that maintainers are willing to accept but do not have cycles to implement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants