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

[FLAKY ON MKI] x-pack/test_serverless/functional/test_suites/common/discover/group6/_sidebar·ts #195100

Closed
wayneseymour opened this issue Oct 4, 2024 · 10 comments · Fixed by #202133
Assignees
Labels
failed-test A test failure on a tracked branch, potentially flaky-test impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. Team:DataDiscovery Discover, search (e.g. data plugin and KQL), data views, saved searches. For ES|QL, use Team:ES|QL. test-failure-flaky

Comments

@wayneseymour
Copy link
Member

Config

x-pack/test_serverless/functional/test_suites/security/common_configs/config.group5.ts

discover/group6 discover sidebar renders field groups should work for many fields

Error message

TimeoutError: Request timed out
    at SniffingTransport._request (node_modules/@elastic/transport/src/Transport.ts:630:36)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at /root/.qaf/data/git/kibana/node_modules/@elastic/transport/src/Transport.ts:704:22
    at SniffingTransport.request (node_modules/@elastic/transport/src/Transport.ts:701:14)
    at Indices.create (node_modules/@elastic/elasticsearch/src/api/api/indices.ts:290:12)
    at attemptToCreate (create_index_stream.ts:162:9)
    at handleIndex (create_index_stream.ts:228:5)
    at Transform.transform [as _transform] (create_index_stream.ts:238:13) {
  options: { redaction: { type: 'replace', additionalKeys: [] } },
  meta: {
    body: undefined,
    statusCode: 0,
    headers: {},
    meta: {
      context: null,
      request: [Object],
      name: 'elasticsearch-js',
      connection: [Object],
      attempts: 0,
      aborted: false
    },
    warnings: null
  }
}

Screenshot

Image

discover/group6 discover sidebar renders field groups should work correctly when time range is updated

Error message

Error: expected '0 available fields. 53 empty fields. 4 meta fields.' to equal '48 available fields. 5 empty fields. 4 meta fields.'
    at Assertion.assert (expect.js:100:11)
    at Assertion.apply (expect.js:227:8)
    at Assertion.be (expect.js:69:22)
    at Context. (_sidebar.ts:675:83)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at Object.apply (wrap_function.js:74:16)

Screenshot

Image

Config

x-pack/test_serverless/functional/test_suites/observability/common_configs/config.group5.ts

discover/group6 discover sidebar renders field groups should work for many fields

Error message

Error: expected '0 available fields. 53 empty fields. 4 meta fields.' to equal '48 available fields. 5 empty fields. 4 meta fields.'
    at Assertion.assert (expect.js:100:11)
    at Assertion.apply (expect.js:227:8)
    at Assertion.be (expect.js:69:22)
    at Context. (_sidebar.ts:534:83)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at Object.apply (wrap_function.js:74:16)

Screenshot

Image

discover/group6 discover sidebar renders field groups should work with ad-hoc data views and runtime fields

Error message

Error: expected '0 available fields. 53 empty fields. 4 meta fields.' to equal '48 available fields. 5 empty fields. 4 meta fields.'
    at Assertion.assert (expect.js:100:11)
    at Assertion.apply (expect.js:227:8)
    at Assertion.be (expect.js:69:22)
    at Context. (_sidebar.ts:572:83)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at Object.apply (wrap_function.js:74:16)

Screenshot

Image

discover/group6 discover sidebar renders field groups should render even when retrieving documents failed with an error

Error message

Error: expected '0 available fields. 53 empty fields. 4 meta fields.' to equal '48 available fields. 5 empty fields. 4 meta fields.'
    at Assertion.assert (expect.js:100:11)
    at Assertion.apply (expect.js:227:8)
    at Assertion.be (expect.js:69:22)
    at Context. (_sidebar.ts:630:83)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at Object.apply (wrap_function.js:74:16)

Screenshot

Image

discover/group6 discover sidebar renders field groups should work correctly when time range is updated

Error message

Error: expected '0 available fields. 53 empty fields. 4 meta fields.' to equal '48 available fields. 5 empty fields. 4 meta fields.'
    at Assertion.assert (expect.js:100:11)
    at Assertion.apply (expect.js:227:8)
    at Assertion.be (expect.js:69:22)
    at Context. (_sidebar.ts:675:83)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at Object.apply (wrap_function.js:74:16)

Screenshot

Image

@wayneseymour wayneseymour added impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. Team:DataDiscovery Discover, search (e.g. data plugin and KQL), data views, saved searches. For ES|QL, use Team:ES|QL. test-failure-flaky labels Oct 4, 2024
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-data-discovery (Team:DataDiscovery)

wayneseymour added a commit to wayneseymour/kibana that referenced this issue Oct 4, 2024
pheyos pushed a commit that referenced this issue Oct 5, 2024
@davismcphee davismcphee added the failed-test A test failure on a tracked branch, potentially flaky-test label Oct 7, 2024
tiansivive pushed a commit to tiansivive/kibana that referenced this issue Oct 7, 2024
@kertal
Copy link
Member

kertal commented Oct 22, 2024

@wayneseymour are there more logs, I'd focus on getting more details about

TimeoutError: Request timed out
at SniffingTransport._request (node_modules/@elastic/transport/src/Transport.ts:630:36)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
at /root/.qaf/data/git/kibana/node_modules/@elastic/transport/src/Transport.ts:704:22
at SniffingTransport.request (node_modules/@elastic/transport/src/Transport.ts:701:14)
at Indices.create (node_modules/@elastic/elasticsearch/src/api/api/indices.ts:290:12)
at attemptToCreate (create_index_stream.ts:162:9)
at handleIndex (create_index_stream.ts:228:5)
at Transform.transform [as _transform] (create_index_stream.ts:238:13) {
options: { redaction: { type: 'replace', additionalKeys: [] } },
meta: {
body: undefined,
statusCode: 0,

because the failures following this up are a consequence of this. it failes because the the data can't be ingested, created for whatever reason:

await esArchiver.loadIfNeeded('test/functional/fixtures/es_archiver/many_fields');
await kibanaServer.importExport.load(
'test/functional/fixtures/kbn_archiver/many_fields_data_view'
);

this points to a problem with the infrastructure with suche kind of data (huge amount of fields). I'd suggest to relabel it, it should not be assigned to our team, although we are always happy to help with the detective work 🕵

@wayneseymour
Copy link
Member Author

@kertal Well I've been instructed to assign flaky mki tests to the test owner, per my boss \cc @pheyos
Of course, you are free to re-team it! 💯

@kertal
Copy link
Member

kertal commented Oct 23, 2024

@wayneseymour that's fine and it makes sense when owners can do something to resolve it, but in this case, I doubt that. But open for suggestions of course (it's just about cleaning up our failures into stuff we we can fix and we can't :)

@wayneseymour
Copy link
Member Author

Also, regarding the ingestion, the es archiver load function has params for increasing the performance.
Perhaps that and increasing one or more of the timeouts could be of use?

Ok so I've timeboxed some play time on this problem.

I've increased the concurrency and it passes on my local.
Maybe the attatched patch is the starting point of a fix?

sidebar-with-perf.patch

@kertal
Copy link
Member

kertal commented Oct 23, 2024

@wayneseymour sounds like a plan

@jughosta
Copy link
Contributor

Looks very much like https://github.com/elastic/kibana-team/issues/928 where for some reason ES reports fields as Empty during some period of time but hard to reproduce.

@kertal
Copy link
Member

kertal commented Oct 28, 2024

@jughosta I think it's different this time. The first test failure appears to be because there's a ingestion problem with the many fields (@wayneseymour if your approach doesn't help, we might consider to skip this test for MKI , would it be possible just skip the single one, not the whole _sidebar.ts). The following failures appear to be related to the this error. there should be different data views in the screenshots, but it's just log stash-*

@wayneseymour
Copy link
Member Author

@kertal Apologies but we cannot skip only one it block for mki.
The tags are setup to skip the entire suite.

@pheyos
Copy link
Member

pheyos commented Oct 28, 2024

If you really only want to skip one of the tests for MKI, you would have introduce a nested describe and move that test there. On that sub-suite level you can apply tags again.

@kertal kertal added impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. and removed impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. labels Nov 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
failed-test A test failure on a tracked branch, potentially flaky-test impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. Team:DataDiscovery Discover, search (e.g. data plugin and KQL), data views, saved searches. For ES|QL, use Team:ES|QL. test-failure-flaky
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants