opensearch-project / opensearch-project/sql
Integration test suite duration (~5 hours 40 minutes) - identify optimization opportunities
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 176
- Forks
- 229
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 43
Description
Description
The SQL integration tests are taking around 5 hours and 40 minutes to complete. The secured integration tests are taking substantially longer than the unsecured tests. Total integ test runtime across all distributions is around 5 hours and 40 minutes, with the secured tests appearing to account for a disproportionate share of that time.
Context
- 5 hours for a single component's integ tests puts pressure on the overall release pipeline since all components must pass before RC
- As the test suite grows, this will only get worse without structural changes
Ask
Would appreciate investigation into:
- What's driving the secured vs unsecured gap?
- Which secured test suites are the most expensive?
- Optimization opportunities
Examples
- https://ci.opensearch.org/ci/dbc/integ-test/3.8.0/12113/linux/x64/tar/test-results/11474/integ-test/sql/with-security/stdout.txt
- https://ci.opensearch.org/ci/dbc/integ-test/3.8.0/12113/linux/x64/tar/test-results/11474/integ-test/sql/without-security/stdout.txt
- https://ci.opensearch.org/ci/dbc/integ-test/3.8.0/12102/linux/arm64/tar/test-results/11453/integ-test/sql/with-security/stdout.txt
- https://ci.opensearch.org/ci/dbc/integ-test/3.8.0/12102/linux/arm64/tar/test-results/11453/integ-test/sql/without-security/stdout.txt
cc: @opensearch-project/engineering-effectiveness
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked Jenkins integration-test runs and compare the secured and unsecured SQL stdout.txt results for the listed Linux x64 and arm64 runs. Identify which secured suites account for the extra time, then investigate optimization opportunities in the integration-test setup. Done means the runtime drivers are documented and an optimization can be validated with a new integration-test run.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- performance, testing
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100