opensearch-project / opensearch-project/sql

Integration test suite duration (~5 hours 40 minutes) - identify optimization opportunities

Open
#5,690 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

infrastructure
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:

  1. What's driving the secured vs unsecured gap?
  2. Which secured test suites are the most expensive?
  3. Optimization opportunities
Examples

https://build.ci.opensearch.org/blue/organizations/jenkins/integ-test/detail/integ-test/11474/pipeline/156

https://build.ci.opensearch.org/blue/organizations/jenkins/integ-test/detail/integ-test/11453/pipeline/156

https://build.ci.opensearch.org/blue/organizations/jenkins/integ-test/detail/integ-test/11458/pipeline/153

https://build.ci.opensearch.org/blue/organizations/jenkins/integ-test/detail/integ-test/11457/pipeline/153

cc: @opensearch-project/engineering-effectiveness

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.