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

[TSVB] Replace indexpattern input text with a combobox #82696

Closed
wants to merge 4 commits into from

Conversation

alexwizp
Copy link
Contributor

@alexwizp alexwizp commented Nov 5, 2020

Closes: #80849

Summary

Replace indexpattern input with a EuiSuggest component

Related issues in EUI (Not a blockers for that PR):

Screens

image

Checklist

Delete any items that are not applicable to this PR.

@alexwizp alexwizp requested a review from stratoula November 5, 2020 11:53
@alexwizp alexwizp changed the title [TSVB] Replace indexpattern input text with a combobox [WIP][TSVB] Replace indexpattern input text with a combobox Nov 6, 2020
@alexwizp alexwizp removed the request for review from stratoula November 6, 2020 12:32
@alexwizp
Copy link
Contributor Author

@elasticmachine merge upstream

1 similar comment
@alexwizp
Copy link
Contributor Author

alexwizp commented Dec 2, 2020

@elasticmachine merge upstream

@kibanamachine
Copy link
Contributor

merge conflict between base and head

@alexwizp
Copy link
Contributor Author

alexwizp commented Dec 3, 2020

@elasticmachine merge upstream

@alexwizp alexwizp changed the title [WIP][TSVB] Replace indexpattern input text with a combobox [TSVB] Replace indexpattern input text with a combobox Dec 4, 2020
@alexwizp
Copy link
Contributor Author

alexwizp commented Dec 4, 2020

@elasticmachine merge upstream

@cchaos
Copy link
Contributor

cchaos commented Dec 7, 2020

Hey @alexwizp , Curious as to why you chose the EuiSuggest component instead of the EuiComboBox? EuiSuggest is usually when the input is a compound of strings forming a "formula" with auto suggestions based on input location. Whereas this functionality is simply a multi-select.

@alexwizp
Copy link
Contributor Author

alexwizp commented Dec 7, 2020

@cchaos please see #80849 (comment). In a nutshell, we cannot parse the current index pattern string to correctly cover all cases.

@stratoula
Copy link
Contributor

stratoula commented Dec 14, 2020

@alexwizp it would be great if we could also use the keyboard here. I can only select index patterns with the mouse click. Moreover it partially solves the ux problem we are trying to solve here. User should remember a part of the index pattern. If we use the combobox with not multiselect? What kind of problems do we have? Can you remind me?

@alexwizp
Copy link
Contributor Author

@elasticmachine merge upstream

@alexwizp
Copy link
Contributor Author

@stratoula elastic/eui#4345 - reported issue for issues related to keyboard navigation

@chaos let me show you 2 cases why we cannot use a multi-select component:

  • Search across clusters: https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-cross-cluster-search.html
    User should be able to search by one or more remote clusters. From the UI perspective it means that after selecting cluster we should suggest available indexes:
    image

  • Multiple indexes. Imagine that user created the following Kibana indexes:
    image
    But in TSVB user wants to work with Elastic Indexes and input: my-index-a,my-index-b,my-index-c. Due to the fact that we use one separator , we need somehow to parse that input. How we can split that? I see at least 3 possible cases:

  1. my-index-a,my-index-b, my-index-c
  2. my-index-a, my-index-b,my-index-c
  3. my-index-a, my-index-b, my-index-c
    Probably we can change separator with writing a new migration script for that. But our idea was to suggest some index pattern to user and EuiSuggest does exactly what we want.

@alexwizp
Copy link
Contributor Author

@elasticmachine merge upstream

@alexwizp alexwizp requested a review from cchaos January 12, 2021 08:40
@alexwizp
Copy link
Contributor Author

alexwizp commented Jan 12, 2021

@cchaos, could you please help us find a better component for this feature or approve this approach

@alexwizp alexwizp force-pushed the 80849 branch 2 times, most recently from b53f301 to e7a8625 Compare January 12, 2021 15:29
@elastic elastic deleted a comment from kibanamachine Jan 12, 2021
@elastic elastic deleted a comment from kibanamachine Jan 12, 2021
@stratoula
Copy link
Contributor

@alexwizp why don't we use the combobox Single selection with custom options ?

@alexwizp
Copy link
Contributor Author

@alexwizp why don't we use the combobox Single selection with custom options ?

Single selecting mode overrides the previous value, how in that case we should select more than 2 indexes?

@stratoula
Copy link
Contributor

I was thinking: If the user wants to select only one index pattern then she could use the combobox, otherwise she should use the free text of the combobox.

@alexwizp alexwizp marked this pull request as ready for review January 14, 2021 20:11
@alexwizp alexwizp requested a review from a team January 14, 2021 20:11
@alexwizp
Copy link
Contributor Author

@stratoula @ryankeairns one more case why I prefer to use EuiSuggest instead of EuiComboBox.

Next case based on our sample data (kibana_sample_data_logs, kibana_sample_data_flights, kibana_sample_data_ecommerce indexes should be installed). Imagine that user wants to use kibana_sample_data_* index in TSVB. How he can do it without typing it and passing into onCreateOption callback? EuiComboBox doesn't allow to modify selected value.
I even cannot copy/paste functionality with that component =(

Screen.Recording.2021-01-15.at.11.57.35.AM.mov

In EuiSuggest that case looks much easier for user.

Screen.Recording.2021-01-15.at.12.03.41.PM.mov

@stratoula
Copy link
Contributor

@alexwizp thanx for this. He can't edit it but can he write it? Is it allowed?

@alexwizp
Copy link
Contributor Author

@stratoula yes, but if I understand our goal properly we are trying to simplify selecting indexes for our users. And for me it looks more like an autocomplete functionality, not a selecting a specific one's.

@alexwizp alexwizp self-assigned this Jan 15, 2021
@alexwizp alexwizp added Feature:TSVB TSVB (Time Series Visual Builder) Team:Visualizations Visualization editors, elastic-charts and infrastructure labels Jan 15, 2021
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-app (Team:KibanaApp)

@ryankeairns
Copy link
Contributor

@alexwizp you are moving me toward the EuiSuggest approach :)

This is a clear improvement over the current state which is an open text input, and I appreciate the need to conduct wildcard searches. I also see @stratoula 's point about not having to memorize index pattern names.

My instinct is to continue with EuiSuggest, as you have it, which feels like a natural progression and improvement over the current UX. Then, we continue thinking about ways to improve the discovery of index patterns without guessing at names. For example, we may end up with more than one input - consider a combobox default with an option for a custom, wildcard-style search.

I'm not aware of any metrics to support it, but this makes me wonder how often the comobox approach would do the job - perhaps it covers most cases, but we have no way of knowing. Given that, it feels to me that the more open-ended approach does not box us in for now, makes things noticeably better, and affords us the opportunity (and time) to learn from users.

@ryankeairns
Copy link
Contributor

One additional point - whatever solution we arrive at should likely be the default, shared experience across Kibana in the long run.

@stratoula
Copy link
Contributor

@elasticmachine merge upstream

const suggestions = availableIndexes.filter(
(index) =>
index !== prefix &&
index.startsWith(prefix) &&
Copy link
Contributor

@stratoula stratoula Jan 18, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest to not return suggestions that startWith the input value but to return suggestions that contain the input value. In that way, I have to remember only one word from my index pattern and not how it starts. For example I write logs and the kibana_sampl_data_logs index pattern is suggested. I think that this will improve the UX a lot 🙂

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed that and I like how it works now ❤️

@kibanamachine
Copy link
Contributor

kibanamachine commented Jan 19, 2021

💔 Build Failed

Failed CI Steps


Test Failures

Chrome X-Pack UI Functional Tests.x-pack/test/functional/apps/rollup_job/tsvb·js.rollup app tsvb integration create rollup tsvb

Link to Jenkins

Standard Out

Failed Tests Reporter:
  - Test has failed 10 times on tracked branches: https://github.com/elastic/kibana/issues/56816

[00:00:00]       │
[00:31:38]         └-: rollup app
[00:31:38]           └-> "before all" hook
[00:32:42]           └-: tsvb integration
[00:32:42]             └-> "before all" hook
[00:32:42]             └-> "before all" hook
[00:32:42]               │ info [visualize/default] Loading "mappings.json"
[00:32:42]               │ info [visualize/default] Loading "data.json"
[00:32:42]               │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_1/qVm-SGgsQ72__p2qGR4jhA] deleting index
[00:32:42]               │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/VWed0803SWi1p_Oc9ZLUdA] deleting index
[00:32:42]               │ info [visualize/default] Deleted existing index [".kibana_2",".kibana_1"]
[00:32:42]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana] creating index, cause [api], templates [], shards [1]/[0]
[00:32:42]               │ info [visualize/default] Created index ".kibana"
[00:32:42]               │ debg [visualize/default] ".kibana" settings {"index":{"number_of_shards":"1","auto_expand_replicas":"0-1","number_of_replicas":"0"}}
[00:32:42]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [metricbeat-7] creating index, cause [auto(bulk api)], templates [], shards [1]/[1]
[00:32:42]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [metricbeat-7/DWKZ3IQ7TCe_i9zqModdZg] create_mapping
[00:32:42]               │ info [visualize/default] Indexed 8 docs into ".kibana"
[00:32:42]               │ info [visualize/default] Indexed 1 docs into "metricbeat-7"
[00:32:42]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana/c-ct205sRFqz3dL9k0Uf1w] update_mapping [_doc]
[00:32:42]               │ debg Migrating saved objects
[00:32:42]               │ proc [kibana]   log   [09:38:19.899] [info][savedobjects-service] Creating index .kibana_2.
[00:32:42]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2] creating index, cause [api], templates [], shards [1]/[1]
[00:32:42]               │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] updating number_of_replicas to [0] for indices [.kibana_2]
[00:32:42]               │ proc [kibana]   log   [09:38:19.973] [info][savedobjects-service] Reindexing .kibana to .kibana_1
[00:32:42]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_1] creating index, cause [api], templates [], shards [1]/[1]
[00:32:42]               │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] updating number_of_replicas to [0] for indices [.kibana_1]
[00:32:42]               │ info [o.e.t.LoggingTaskListener] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] 89018 finished with response BulkByScrollResponse[took=79.2ms,timed_out=false,sliceId=null,updated=0,created=8,deleted=0,batches=1,versionConflicts=0,noops=0,retries=0,throttledUntil=0s,bulk_failures=[],search_failures=[]]
[00:32:43]               │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana/c-ct205sRFqz3dL9k0Uf1w] deleting index
[00:32:43]               │ proc [kibana]   log   [09:38:20.318] [info][savedobjects-service] Migrating .kibana_1 saved objects to .kibana_2
[00:32:43]               │ proc [kibana]   log   [09:38:20.335] [error][savedobjects-service] Error: Unable to migrate the corrupt Saved Object document custom-space:index-pattern:metricbeat-*. To prevent Kibana from performing a migration on every restart, please delete or fix this document by ensuring that the namespace and type in the document's id matches the values in the namespace and type fields.
[00:32:43]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/jhPMzzjES9CwrsDsSCk00Q] update_mapping [_doc]
[00:32:43]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/jhPMzzjES9CwrsDsSCk00Q] update_mapping [_doc]
[00:32:43]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/jhPMzzjES9CwrsDsSCk00Q] update_mapping [_doc]
[00:32:43]               │ proc [kibana]   log   [09:38:20.519] [info][savedobjects-service] Pointing alias .kibana to .kibana_2.
[00:32:43]               │ proc [kibana]   log   [09:38:20.559] [info][savedobjects-service] Finished in 661ms.
[00:32:43]               │ debg applying update to kibana config: {"accessibility:disableAnimations":true,"dateFormat:tz":"UTC","visualization:visualize:legacyChartsLibrary":true}
[00:32:43]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/jhPMzzjES9CwrsDsSCk00Q] update_mapping [_doc]
[00:32:44]             └-> create rollup tsvb
[00:32:44]               └-> "before each" hook: global before each
[00:32:44]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-source-data] creating index, cause [auto(bulk api)], templates [], shards [1]/[1]
[00:32:44]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-source-data/GquPMlhtSjWj_dD8sm5tEQ] create_mapping
[00:32:44]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-target-data] creating index, cause [api], templates [], shards [1]/[1]
[00:32:44]               │ debg navigating to visualize url: http://localhost:61201/app/visualize#/
[00:32:44]               │ debg navigate to: http://localhost:61201/app/visualize#/
[00:32:44]               │ info [o.e.x.r.j.RollupJobTask] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] Rollup job [tsvb-test-rollup-job-1611047136685] created.
[00:32:44]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-target-data/4brn3JAeSZOaB-bAMAT1DA] update_mapping [_doc]
[00:32:45]               │ debg browser[INFO] http://localhost:61201/app/visualize?_t=1611049102095#/ 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:32:45]               │
[00:32:45]               │ debg browser[INFO] http://localhost:61201/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:32:45]               │ debg ... sleep(700) start
[00:32:45]               │ debg ... sleep(700) end
[00:32:45]               │ debg returned from get, calling refresh
[00:32:46]               │ debg browser[INFO] http://localhost:61201/app/visualize?_t=1611049102095#/ 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:32:46]               │
[00:32:46]               │ debg browser[INFO] http://localhost:61201/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:32:46]               │ debg currentUrl = http://localhost:61201/app/visualize#/
[00:32:46]               │          appUrl = http://localhost:61201/app/visualize#/
[00:32:46]               │ debg TestSubjects.find(kibanaChrome)
[00:32:46]               │ debg Find.findByCssSelector('[data-test-subj="kibanaChrome"]') with timeout=60000
[00:32:47]               │ debg ... sleep(501) start
[00:32:47]               │ debg ... sleep(501) end
[00:32:47]               │ debg in navigateTo url = http://localhost:61201/app/visualize#/?_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:now-15m,to:now))
[00:32:47]               │ debg --- retry.try error: URL changed, waiting for it to settle
[00:32:48]               │ debg ... sleep(501) start
[00:32:48]               │ debg ... sleep(501) end
[00:32:48]               │ debg in navigateTo url = http://localhost:61201/app/visualize#/?_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:now-15m,to:now))
[00:32:48]               │ debg TestSubjects.exists(statusPageContainer)
[00:32:48]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="statusPageContainer"]') with timeout=2500
[00:32:51]               │ debg --- retry.tryForTime error: [data-test-subj="statusPageContainer"] is not displayed
[00:32:51]               │ debg isGlobalLoadingIndicatorVisible
[00:32:51]               │ debg TestSubjects.exists(globalLoadingIndicator)
[00:32:51]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:32:53]               │ debg --- retry.tryForTime error: [data-test-subj="globalLoadingIndicator"] is not displayed
[00:32:53]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:32:53]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:32:53]               │ debg TestSubjects.exists(newItemButton)
[00:32:53]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="newItemButton"]') with timeout=10000
[00:32:53]               │ debg TestSubjects.click(newItemButton)
[00:32:53]               │ debg Find.clickByCssSelector('[data-test-subj="newItemButton"]') with timeout=10000
[00:32:53]               │ debg Find.findByCssSelector('[data-test-subj="newItemButton"]') with timeout=10000
[00:32:53]               │ debg TestSubjects.find(visNewDialogGroups)
[00:32:53]               │ debg Find.findByCssSelector('[data-test-subj="visNewDialogGroups"]') with timeout=10000
[00:32:54]               │ debg TestSubjects.click(visType-metrics)
[00:32:54]               │ debg Find.clickByCssSelector('[data-test-subj="visType-metrics"]') with timeout=10000
[00:32:54]               │ debg Find.findByCssSelector('[data-test-subj="visType-metrics"]') with timeout=10000
[00:32:54]               │ debg isGlobalLoadingIndicatorVisible
[00:32:54]               │ debg TestSubjects.exists(globalLoadingIndicator)
[00:32:54]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:32:54]               │ debg browser[INFO] http://localhost:61201/app/visualize#/create?type=metrics 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:32:54]               │
[00:32:54]               │ debg browser[INFO] http://localhost:61201/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:32:55]               │ debg --- retry.tryForTime error: [data-test-subj="globalLoadingIndicator"] is not displayed
[00:32:56]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:32:56]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:32:57]               │ debg TestSubjects.exists(tvbVisEditor)
[00:32:57]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="tvbVisEditor"]') with timeout=20000
[00:32:57]               │ debg TestSubjects.find(metricTsvbTypeBtn)
[00:32:57]               │ debg Find.findByCssSelector('[data-test-subj="metricTsvbTypeBtn"]') with timeout=10000
[00:32:57]               │ debg TestSubjects.exists(tsvbMetricValue)
[00:32:57]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="tsvbMetricValue"]') with timeout=20000
[00:32:59]               │ debg --- retry.tryForTime error: [data-test-subj="tsvbMetricValue"] is not displayed
[00:33:02]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:05]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:08]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:11]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:14]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:17]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:18]               │ debg TestSubjects.exists(visNoResult)
[00:33:18]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="visNoResult"]') with timeout=1000
[00:33:18]               │ debg Setting absolute range to Oct 15, 2019 @ 00:00:01.000 to Oct 15, 2019 @ 19:31:44.000
[00:33:18]               │ debg TestSubjects.exists(superDatePickerToggleQuickMenuButton)
[00:33:18]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerToggleQuickMenuButton"]') with timeout=20000
[00:33:18]               │ debg TestSubjects.exists(superDatePickerShowDatesButton)
[00:33:18]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=2500
[00:33:18]               │ debg TestSubjects.click(superDatePickerShowDatesButton)
[00:33:18]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=10000
[00:33:18]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=10000
[00:33:18]               │ debg TestSubjects.exists(superDatePickerstartDatePopoverButton)
[00:33:18]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=2500
[00:33:18]               │ debg TestSubjects.click(superDatePickerendDatePopoverButton)
[00:33:18]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerendDatePopoverButton"]') with timeout=10000
[00:33:18]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerendDatePopoverButton"]') with timeout=10000
[00:33:18]               │ debg Find.findByCssSelector('div.euiPopover__panel-isOpen') with timeout=10000
[00:33:18]               │ debg TestSubjects.click(superDatePickerAbsoluteTab)
[00:33:18]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:18]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:19]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:19]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:19]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:19]               │ debg TestSubjects.setValue(superDatePickerAbsoluteDateInput, Oct 15, 2019 @ 19:31:44.000)
[00:33:19]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:19]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:19]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:19]               │ debg TestSubjects.click(superDatePickerstartDatePopoverButton)
[00:33:19]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=10000
[00:33:19]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=10000
[00:33:19]               │ debg Find.waitForElementStale with timeout=10000
[00:33:19]               │ debg Find.findByCssSelector('div.euiPopover__panel-isOpen') with timeout=10000
[00:33:19]               │ debg TestSubjects.click(superDatePickerAbsoluteTab)
[00:33:19]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:19]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:20]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:20]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:20]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:20]               │ debg TestSubjects.setValue(superDatePickerAbsoluteDateInput, Oct 15, 2019 @ 00:00:01.000)
[00:33:20]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:20]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:20]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:20]               │ debg TestSubjects.exists(superDatePickerApplyTimeButton)
[00:33:20]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerApplyTimeButton"]') with timeout=2500
[00:33:22]               │ debg --- retry.tryForTime error: [data-test-subj="superDatePickerApplyTimeButton"] is not displayed
[00:33:23]               │ debg TestSubjects.click(querySubmitButton)
[00:33:23]               │ debg Find.clickByCssSelector('[data-test-subj="querySubmitButton"]') with timeout=10000
[00:33:23]               │ debg Find.findByCssSelector('[data-test-subj="querySubmitButton"]') with timeout=10000
[00:33:23]               │ debg Find.waitForElementStale with timeout=10000
[00:33:23]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:33:23]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:33:23]               │ debg TestSubjects.click(metricEditorPanelOptionsBtn)
[00:33:23]               │ debg Find.clickByCssSelector('[data-test-subj="metricEditorPanelOptionsBtn"]') with timeout=10000
[00:33:23]               │ debg Find.findByCssSelector('[data-test-subj="metricEditorPanelOptionsBtn"]') with timeout=10000
[00:33:24]               │ debg isGlobalLoadingIndicatorVisible
[00:33:24]               │ debg TestSubjects.exists(globalLoadingIndicator)
[00:33:24]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:33:25]               │ debg browser[INFO] http://localhost:61201/39660/bundles/core/core.entry.js 12:195912 "Detected an unhandled Promise rejection.
[00:33:25]               │      Error: Could not locate that index-pattern (id: custom-space:index-pattern:metricbeat-*), [click here to re-create it](management/kibana/indexPatterns)"
[00:33:25]               │ERROR browser[SEVERE] http://localhost:61201/39660/bundles/plugin/data/data.plugin.js 0:558692 Uncaught SavedObjectNotFound: Could not locate that index-pattern (id: custom-sp…to re-create it](management/kibana/indexPatterns)
[00:33:25]               │ debg --- retry.tryForTime error: [data-test-subj="globalLoadingIndicator"] is not displayed
[00:33:26]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:33:26]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:33:26]               │ debg TestSubjects.find(metricsIndexPatternInput)
[00:33:26]               │ debg Find.findByCssSelector('[data-test-subj="metricsIndexPatternInput"]') with timeout=10000
[00:33:26]               │ warn WebElementWrapper.type: element not interactable
[00:33:26]               │        (Session info: headless chrome=87.0.4280.141)
[00:33:26]               │ debg finding element 'By(css selector, [data-test-subj="metricsIndexPatternInput"])' again, 2 attempts left
[00:33:26]               │ warn WebElementWrapper.type: element not interactable
[00:33:26]               │        (Session info: headless chrome=87.0.4280.141)
[00:33:26]               │ debg finding element 'By(css selector, [data-test-subj="metricsIndexPatternInput"])' again, 1 attempts left
[00:33:26]               │ warn WebElementWrapper.type: element not interactable
[00:33:26]               │        (Session info: headless chrome=87.0.4280.141)
[00:33:26]               │ debg finding element 'By(css selector, [data-test-subj="metricsIndexPatternInput"])' again, 0 attempts left
[00:33:27]               │ info Taking screenshot "/dev/shm/workspace/parallel/20/kibana/x-pack/test/functional/screenshots/failure/rollup app tsvb integration create rollup tsvb.png"
[00:33:27]               │ info Current URL is: http://localhost:61201/app/visualize#/create?type=metrics&_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:%272019-10-15T00:00:01.000Z%27,to:%272019-10-15T19:31:44.000Z%27))&_a=(filters:!(),linked:!f,query:(language:kuery,query:%27%27),uiState:(),vis:(aggs:!(),params:(axis_formatter:number,axis_position:left,axis_scale:normal,background_color_rules:!((id:%27194b7270-5a3a-11eb-8d0f-850edd27ce81%27)),default_index_pattern:%27metricbeat-*%27,default_timefield:%27@timestamp%27,id:%2761ca57f0-469d-11e7-af02-69e470af7417%27,index_pattern:r,interval:%27%27,isModelInvalid:!f,series:!((axis_position:right,chart_type:line,color:%2368BC00,fill:0.5,formatter:number,id:%2761ca57f1-469d-11e7-af02-69e470af7417%27,line_width:1,metrics:!((id:%2761ca57f2-469d-11e7-af02-69e470af7417%27,type:count)),point_size:1,separate_axis:0,split_color_mode:kibana,split_mode:everything,stacked:none)),show_grid:1,show_legend:1,time_field:%27%27,tooltip_mode:show_all,type:metric),title:%27%27,type:metrics))
[00:33:27]               │ info Saving page source to: /dev/shm/workspace/parallel/20/kibana/x-pack/test/functional/failure_debug/html/rollup app tsvb integration create rollup tsvb.html
[00:33:27]               └- ✖ fail: rollup app tsvb integration create rollup tsvb
[00:33:27]               │      ElementNotInteractableError: element not interactable
[00:33:27]               │   (Session info: headless chrome=87.0.4280.141)
[00:33:27]               │       at Object.throwDecodedError (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/error.js:550:15)
[00:33:27]               │       at parseHttpResponse (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:565:13)
[00:33:27]               │       at Executor.execute (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:491:26)
[00:33:27]               │       at runMicrotasks (<anonymous>)
[00:33:27]               │       at processTicksAndRejections (internal/process/task_queues.js:93:5)
[00:33:27]               │       at Task.exec (/dev/shm/workspace/parallel/20/kibana/test/functional/services/remote/prevent_parallel_calls.ts:40:22)
[00:33:27]               │ 
[00:33:27]               │ 

Stack Trace

ElementNotInteractableError: element not interactable
  (Session info: headless chrome=87.0.4280.141)
    at Object.throwDecodedError (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/error.js:550:15)
    at parseHttpResponse (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:565:13)
    at Executor.execute (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:491:26)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at Task.exec (/dev/shm/workspace/parallel/20/kibana/test/functional/services/remote/prevent_parallel_calls.ts:40:22) {
  remoteStacktrace: '#0 0x55bf9420ae79 <unknown>\n'
}

Chrome X-Pack UI Functional Tests.x-pack/test/functional/apps/rollup_job/tsvb·js.rollup app tsvb integration create rollup tsvb

Link to Jenkins

Standard Out

Failed Tests Reporter:
  - Test has failed 10 times on tracked branches: https://github.com/elastic/kibana/issues/56816

[00:00:00]       │
[00:31:49]         └-: rollup app
[00:31:49]           └-> "before all" hook
[00:32:52]           └-: tsvb integration
[00:32:52]             └-> "before all" hook
[00:32:52]             └-> "before all" hook
[00:32:52]               │ info [visualize/default] Loading "mappings.json"
[00:32:52]               │ info [visualize/default] Loading "data.json"
[00:32:52]               │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_1/o8mX_ifYTyu3Ed26nHUVTQ] deleting index
[00:32:52]               │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/KhQGiRQOTdOh9_CSm9O71Q] deleting index
[00:32:52]               │ info [visualize/default] Deleted existing index [".kibana_2",".kibana_1"]
[00:32:52]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana] creating index, cause [api], templates [], shards [1]/[0]
[00:32:52]               │ info [visualize/default] Created index ".kibana"
[00:32:52]               │ debg [visualize/default] ".kibana" settings {"index":{"number_of_shards":"1","auto_expand_replicas":"0-1","number_of_replicas":"0"}}
[00:32:52]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [metricbeat-7] creating index, cause [auto(bulk api)], templates [], shards [1]/[1]
[00:32:52]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [metricbeat-7/Oyv_-nNkRaCmayLQ2EGNwg] create_mapping
[00:32:52]               │ info [visualize/default] Indexed 8 docs into ".kibana"
[00:32:52]               │ info [visualize/default] Indexed 1 docs into "metricbeat-7"
[00:32:52]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana/ZSGqtBp8RP6sr0ZN2dHZhQ] update_mapping [_doc]
[00:32:52]               │ debg Migrating saved objects
[00:32:52]               │ proc [kibana]   log   [09:03:37.982] [info][savedobjects-service] Creating index .kibana_2.
[00:32:52]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2] creating index, cause [api], templates [], shards [1]/[1]
[00:32:52]               │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] updating number_of_replicas to [0] for indices [.kibana_2]
[00:32:52]               │ proc [kibana]   log   [09:03:38.041] [info][savedobjects-service] Reindexing .kibana to .kibana_1
[00:32:52]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_1] creating index, cause [api], templates [], shards [1]/[1]
[00:32:52]               │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] updating number_of_replicas to [0] for indices [.kibana_1]
[00:32:52]               │ info [o.e.t.LoggingTaskListener] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] 89066 finished with response BulkByScrollResponse[took=76.1ms,timed_out=false,sliceId=null,updated=0,created=8,deleted=0,batches=1,versionConflicts=0,noops=0,retries=0,throttledUntil=0s,bulk_failures=[],search_failures=[]]
[00:32:53]               │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana/ZSGqtBp8RP6sr0ZN2dHZhQ] deleting index
[00:32:53]               │ proc [kibana]   log   [09:03:38.382] [info][savedobjects-service] Migrating .kibana_1 saved objects to .kibana_2
[00:32:53]               │ proc [kibana]   log   [09:03:38.400] [error][savedobjects-service] Error: Unable to migrate the corrupt Saved Object document custom-space:index-pattern:metricbeat-*. To prevent Kibana from performing a migration on every restart, please delete or fix this document by ensuring that the namespace and type in the document's id matches the values in the namespace and type fields.
[00:32:53]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/umZ9BM1lRI-hynrNeFXwmg] update_mapping [_doc]
[00:32:53]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/umZ9BM1lRI-hynrNeFXwmg] update_mapping [_doc]
[00:32:53]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/umZ9BM1lRI-hynrNeFXwmg] update_mapping [_doc]
[00:32:53]               │ proc [kibana]   log   [09:03:38.612] [info][savedobjects-service] Pointing alias .kibana to .kibana_2.
[00:32:53]               │ proc [kibana]   log   [09:03:38.653] [info][savedobjects-service] Finished in 672ms.
[00:32:53]               │ debg applying update to kibana config: {"accessibility:disableAnimations":true,"dateFormat:tz":"UTC","visualization:visualize:legacyChartsLibrary":true}
[00:32:53]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [.kibana_2/umZ9BM1lRI-hynrNeFXwmg] update_mapping [_doc]
[00:32:54]             └-> create rollup tsvb
[00:32:54]               └-> "before each" hook: global before each
[00:32:54]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-source-data] creating index, cause [auto(bulk api)], templates [], shards [1]/[1]
[00:32:54]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-source-data/B8U6KIS6TJmKPdHxNdZXQw] create_mapping
[00:32:54]               │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-target-data] creating index, cause [api], templates [], shards [1]/[1]
[00:32:54]               │ info [o.e.x.r.j.RollupJobTask] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] Rollup job [tsvb-test-rollup-job-1611045044436] created.
[00:32:54]               │ debg navigating to visualize url: http://localhost:61201/app/visualize#/
[00:32:54]               │ debg navigate to: http://localhost:61201/app/visualize#/
[00:32:54]               │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-ubuntu-16-tests-xxl-1611042541771308919] [rollup-target-data/lMxZwcaRRyCiS-JZ5IUywg] update_mapping [_doc]
[00:32:54]               │ debg browser[INFO] http://localhost:61201/app/visualize?_t=1611047020166#/ 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:32:54]               │
[00:32:54]               │ debg browser[INFO] http://localhost:61201/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:32:54]               │ debg ... sleep(700) start
[00:32:55]               │ debg ... sleep(700) end
[00:32:55]               │ debg returned from get, calling refresh
[00:32:56]               │ debg browser[INFO] http://localhost:61201/app/visualize?_t=1611047020166#/ 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:32:56]               │
[00:32:56]               │ debg browser[INFO] http://localhost:61201/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:32:56]               │ debg currentUrl = http://localhost:61201/app/visualize#/
[00:32:56]               │          appUrl = http://localhost:61201/app/visualize#/
[00:32:56]               │ debg TestSubjects.find(kibanaChrome)
[00:32:56]               │ debg Find.findByCssSelector('[data-test-subj="kibanaChrome"]') with timeout=60000
[00:32:57]               │ debg ... sleep(501) start
[00:32:57]               │ debg ... sleep(501) end
[00:32:57]               │ debg in navigateTo url = http://localhost:61201/app/visualize#/?_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:now-15m,to:now))
[00:32:57]               │ debg --- retry.try error: URL changed, waiting for it to settle
[00:32:58]               │ debg ... sleep(501) start
[00:32:58]               │ debg ... sleep(501) end
[00:32:58]               │ debg in navigateTo url = http://localhost:61201/app/visualize#/?_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:now-15m,to:now))
[00:32:58]               │ debg TestSubjects.exists(statusPageContainer)
[00:32:58]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="statusPageContainer"]') with timeout=2500
[00:33:01]               │ debg --- retry.tryForTime error: [data-test-subj="statusPageContainer"] is not displayed
[00:33:01]               │ debg isGlobalLoadingIndicatorVisible
[00:33:01]               │ debg TestSubjects.exists(globalLoadingIndicator)
[00:33:01]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:33:03]               │ debg --- retry.tryForTime error: [data-test-subj="globalLoadingIndicator"] is not displayed
[00:33:03]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:33:03]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:33:03]               │ debg TestSubjects.exists(newItemButton)
[00:33:03]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="newItemButton"]') with timeout=10000
[00:33:03]               │ debg TestSubjects.click(newItemButton)
[00:33:03]               │ debg Find.clickByCssSelector('[data-test-subj="newItemButton"]') with timeout=10000
[00:33:03]               │ debg Find.findByCssSelector('[data-test-subj="newItemButton"]') with timeout=10000
[00:33:03]               │ debg TestSubjects.find(visNewDialogGroups)
[00:33:03]               │ debg Find.findByCssSelector('[data-test-subj="visNewDialogGroups"]') with timeout=10000
[00:33:03]               │ debg TestSubjects.click(visType-metrics)
[00:33:03]               │ debg Find.clickByCssSelector('[data-test-subj="visType-metrics"]') with timeout=10000
[00:33:03]               │ debg Find.findByCssSelector('[data-test-subj="visType-metrics"]') with timeout=10000
[00:33:04]               │ debg isGlobalLoadingIndicatorVisible
[00:33:04]               │ debg TestSubjects.exists(globalLoadingIndicator)
[00:33:04]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:33:04]               │ debg browser[INFO] http://localhost:61201/app/visualize#/create?type=metrics 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:33:04]               │
[00:33:04]               │ debg browser[INFO] http://localhost:61201/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:33:05]               │ debg --- retry.tryForTime error: [data-test-subj="globalLoadingIndicator"] is not displayed
[00:33:06]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:33:06]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:33:07]               │ debg TestSubjects.exists(tvbVisEditor)
[00:33:07]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="tvbVisEditor"]') with timeout=20000
[00:33:07]               │ debg TestSubjects.find(metricTsvbTypeBtn)
[00:33:07]               │ debg Find.findByCssSelector('[data-test-subj="metricTsvbTypeBtn"]') with timeout=10000
[00:33:07]               │ debg TestSubjects.exists(tsvbMetricValue)
[00:33:07]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="tsvbMetricValue"]') with timeout=20000
[00:33:10]               │ debg --- retry.tryForTime error: [data-test-subj="tsvbMetricValue"] is not displayed
[00:33:13]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:16]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:19]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:22]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:25]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:28]               │ debg --- retry.tryForTime failed again with the same message...
[00:33:28]               │ debg TestSubjects.exists(visNoResult)
[00:33:28]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="visNoResult"]') with timeout=1000
[00:33:28]               │ debg Setting absolute range to Oct 15, 2019 @ 00:00:01.000 to Oct 15, 2019 @ 19:31:44.000
[00:33:28]               │ debg TestSubjects.exists(superDatePickerToggleQuickMenuButton)
[00:33:28]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerToggleQuickMenuButton"]') with timeout=20000
[00:33:28]               │ debg TestSubjects.exists(superDatePickerShowDatesButton)
[00:33:28]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=2500
[00:33:28]               │ debg TestSubjects.click(superDatePickerShowDatesButton)
[00:33:28]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=10000
[00:33:28]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=10000
[00:33:29]               │ debg TestSubjects.exists(superDatePickerstartDatePopoverButton)
[00:33:29]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=2500
[00:33:29]               │ debg TestSubjects.click(superDatePickerendDatePopoverButton)
[00:33:29]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerendDatePopoverButton"]') with timeout=10000
[00:33:29]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerendDatePopoverButton"]') with timeout=10000
[00:33:29]               │ debg Find.findByCssSelector('div.euiPopover__panel-isOpen') with timeout=10000
[00:33:29]               │ debg TestSubjects.click(superDatePickerAbsoluteTab)
[00:33:29]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:29]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:29]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:29]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:29]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:29]               │ debg TestSubjects.setValue(superDatePickerAbsoluteDateInput, Oct 15, 2019 @ 19:31:44.000)
[00:33:29]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:29]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:29]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:29]               │ debg TestSubjects.click(superDatePickerstartDatePopoverButton)
[00:33:29]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=10000
[00:33:29]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=10000
[00:33:29]               │ debg Find.waitForElementStale with timeout=10000
[00:33:30]               │ debg Find.findByCssSelector('div.euiPopover__panel-isOpen') with timeout=10000
[00:33:30]               │ debg TestSubjects.click(superDatePickerAbsoluteTab)
[00:33:30]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:30]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:33:30]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:30]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:30]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:30]               │ debg TestSubjects.setValue(superDatePickerAbsoluteDateInput, Oct 15, 2019 @ 00:00:01.000)
[00:33:30]               │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:33:30]               │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:30]               │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:33:30]               │ debg TestSubjects.exists(superDatePickerApplyTimeButton)
[00:33:30]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerApplyTimeButton"]') with timeout=2500
[00:33:33]               │ debg --- retry.tryForTime error: [data-test-subj="superDatePickerApplyTimeButton"] is not displayed
[00:33:33]               │ debg TestSubjects.click(querySubmitButton)
[00:33:33]               │ debg Find.clickByCssSelector('[data-test-subj="querySubmitButton"]') with timeout=10000
[00:33:33]               │ debg Find.findByCssSelector('[data-test-subj="querySubmitButton"]') with timeout=10000
[00:33:33]               │ debg Find.waitForElementStale with timeout=10000
[00:33:34]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:33:34]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:33:34]               │ debg TestSubjects.click(metricEditorPanelOptionsBtn)
[00:33:34]               │ debg Find.clickByCssSelector('[data-test-subj="metricEditorPanelOptionsBtn"]') with timeout=10000
[00:33:34]               │ debg Find.findByCssSelector('[data-test-subj="metricEditorPanelOptionsBtn"]') with timeout=10000
[00:33:34]               │ debg isGlobalLoadingIndicatorVisible
[00:33:34]               │ debg TestSubjects.exists(globalLoadingIndicator)
[00:33:34]               │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:33:35]               │ debg browser[INFO] http://localhost:61201/39660/bundles/core/core.entry.js 12:195912 "Detected an unhandled Promise rejection.
[00:33:35]               │      Error: Could not locate that index-pattern (id: custom-space:index-pattern:metricbeat-*), [click here to re-create it](management/kibana/indexPatterns)"
[00:33:35]               │ERROR browser[SEVERE] http://localhost:61201/39660/bundles/plugin/data/data.plugin.js 0:558692 Uncaught SavedObjectNotFound: Could not locate that index-pattern (id: custom-sp…to re-create it](management/kibana/indexPatterns)
[00:33:35]               │ debg --- retry.tryForTime error: [data-test-subj="globalLoadingIndicator"] is not displayed
[00:33:36]               │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:33:36]               │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:33:36]               │ debg TestSubjects.find(metricsIndexPatternInput)
[00:33:36]               │ debg Find.findByCssSelector('[data-test-subj="metricsIndexPatternInput"]') with timeout=10000
[00:33:36]               │ warn WebElementWrapper.type: element not interactable
[00:33:36]               │        (Session info: headless chrome=87.0.4280.141)
[00:33:36]               │ debg finding element 'By(css selector, [data-test-subj="metricsIndexPatternInput"])' again, 2 attempts left
[00:33:36]               │ warn WebElementWrapper.type: element not interactable
[00:33:36]               │        (Session info: headless chrome=87.0.4280.141)
[00:33:36]               │ debg finding element 'By(css selector, [data-test-subj="metricsIndexPatternInput"])' again, 1 attempts left
[00:33:37]               │ warn WebElementWrapper.type: element not interactable
[00:33:37]               │        (Session info: headless chrome=87.0.4280.141)
[00:33:37]               │ debg finding element 'By(css selector, [data-test-subj="metricsIndexPatternInput"])' again, 0 attempts left
[00:33:37]               │ info Taking screenshot "/dev/shm/workspace/parallel/20/kibana/x-pack/test/functional/screenshots/failure/rollup app tsvb integration create rollup tsvb.png"
[00:33:37]               │ info Current URL is: http://localhost:61201/app/visualize#/create?type=metrics&_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:%272019-10-15T00:00:01.000Z%27,to:%272019-10-15T19:31:44.000Z%27))&_a=(filters:!(),linked:!f,query:(language:kuery,query:%27%27),uiState:(),vis:(aggs:!(),params:(axis_formatter:number,axis_position:left,axis_scale:normal,background_color_rules:!((id:%27409d9dd0-5a35-11eb-94f3-c1af846281d7%27)),default_index_pattern:%27metricbeat-*%27,default_timefield:%27@timestamp%27,id:%2761ca57f0-469d-11e7-af02-69e470af7417%27,index_pattern:r,interval:%27%27,isModelInvalid:!f,series:!((axis_position:right,chart_type:line,color:%2368BC00,fill:0.5,formatter:number,id:%2761ca57f1-469d-11e7-af02-69e470af7417%27,line_width:1,metrics:!((id:%2761ca57f2-469d-11e7-af02-69e470af7417%27,type:count)),point_size:1,separate_axis:0,split_color_mode:kibana,split_mode:everything,stacked:none)),show_grid:1,show_legend:1,time_field:%27%27,tooltip_mode:show_all,type:metric),title:%27%27,type:metrics))
[00:33:37]               │ info Saving page source to: /dev/shm/workspace/parallel/20/kibana/x-pack/test/functional/failure_debug/html/rollup app tsvb integration create rollup tsvb.html
[00:33:37]               └- ✖ fail: rollup app tsvb integration create rollup tsvb
[00:33:37]               │      ElementNotInteractableError: element not interactable
[00:33:37]               │   (Session info: headless chrome=87.0.4280.141)
[00:33:37]               │       at Object.throwDecodedError (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/error.js:550:15)
[00:33:37]               │       at parseHttpResponse (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:565:13)
[00:33:37]               │       at Executor.execute (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:491:26)
[00:33:37]               │       at runMicrotasks (<anonymous>)
[00:33:37]               │       at processTicksAndRejections (internal/process/task_queues.js:93:5)
[00:33:37]               │       at Task.exec (/dev/shm/workspace/parallel/20/kibana/test/functional/services/remote/prevent_parallel_calls.ts:40:22)
[00:33:37]               │ 
[00:33:37]               │ 

Stack Trace

ElementNotInteractableError: element not interactable
  (Session info: headless chrome=87.0.4280.141)
    at Object.throwDecodedError (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/error.js:550:15)
    at parseHttpResponse (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:565:13)
    at Executor.execute (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:491:26)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at Task.exec (/dev/shm/workspace/parallel/20/kibana/test/functional/services/remote/prevent_parallel_calls.ts:40:22) {
  remoteStacktrace: '#0 0x56368610ee79 <unknown>\n'
}

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
visTypeTimeseries 470 473 +3

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
visTypeTimeseries 1.7MB 1.7MB +5.8KB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
visTypeTimeseries 137.4KB 137.6KB +151.0B

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@alexwizp
Copy link
Contributor Author

@ryankeairns could you please help us to find some workaround or help with fixing the following issue elastic/eui#4345 on Elastic UI side. It's a blocker for that PR, cause for some cases we cannot input the value using the keyboard. EuiSuggest component lose focus from input component and set it on first item from the suggestions list.

@ryankeairns
Copy link
Contributor

@ryankeairns could you please help us to find some workaround or help with fixing the following issue elastic/eui#4345 on Elastic UI side. It's a blocker for that PR, cause for some cases we cannot input the value using the keyboard. EuiSuggest component lose focus from input component and set it on first item from the suggestions list.

@myasonik can you assist with this?
@alexwizp when you say "It's a blocker for that PR,..." which PR are you referring to? This PR or another one?

@alexwizp
Copy link
Contributor Author

@alexwizp when you say "It's a blocker for that PR,..." which PR are you referring to? This PR or another one?

I'm talking about this PR #82696

@ryankeairns
Copy link
Contributor

@alexwizp Regarding the accessibility issues a) thank you for keeping this top of mind and pressing for a proper fix and b) we need the EUI team to complete some refactoring in order to address this and other related issues.

The good news is that it appears on their 2021 roadmap (see EuiSelectable item), however this won't be done for some time. From what I understand, a workaround is likely to be messy and may be time better spent fixing the underlying issues at the EUI level.

Since these same issues exist for the global KQL bar, is it truly blocking? There's no debating it is an undesirable accessibility issue, but perhaps you can proceed with this work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:TSVB TSVB (Time Series Visual Builder) release_note:enhancement Team:Visualizations Visualization editors, elastic-charts and infrastructure v7.12.0 v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[TSVB] Replace indexpattern input text with a combobox
6 participants