-
Notifications
You must be signed in to change notification settings - Fork 143
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
Add common perftest classes for data generation + use in confluence to demonstrate #1590
Add common perftest classes for data generation + use in confluence to demonstrate #1590
Conversation
Started the migration of other sources in #1607. Did it for ABS and Dropbox there |
Unclear to me why CI is failing, we'll need to dig into that. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
💔 Failed to create backport PR(s)The backport operation could not be completed due to the following error: The backport PRs will be merged automatically after passing CI. To backport manually run: |
Part of https://github.com/elastic/enterprise-search-team/issues/3397
Adding a series of classes that can be used to have common setup for performance tests.
WeightedFakeProvider
class allows to have a class that returns random small/medium/large/extra_large text/html files with given distribution.For example, by default distribution is
[0.58, 0.3, 0.1, 0.02]
, meaning that small items will be returned with 58% chance, medium-sized items with 30% chance, large with 10% and extra_large with 2%.The idea is to have this class used in all functional tests to have uniform test setup, so that we could do better job at estimating the memory consumption of each connector.
One thing to consider: I had to change all
python <FIXTURE_FILE.py>
tobin/python <FIXTURE_FILE.py>
for it to work, because the shared class is inside of the connectors library, and this library is not installed locally - it's installed inside the venv. So to use it, we need to use python that's distributed in venv as well. IMO it makes sense.Checklists
Pre-Review Checklist
v7.13.2
,v7.14.0
,v8.0.0
)