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

Trying to change interval to 1d in TSVB causes fatal error #13772

Closed
bhavyarm opened this issue Aug 29, 2017 · 11 comments
Closed

Trying to change interval to 1d in TSVB causes fatal error #13772

bhavyarm opened this issue Aug 29, 2017 · 11 comments
Labels
bug Fixes for quality problems that affect the customer experience Feature:TSVB TSVB (Time Series Visual Builder) Team:Visualizations Visualization editors, elastic-charts and infrastructure

Comments

@bhavyarm
Copy link
Contributor

bhavyarm commented Aug 29, 2017

Kibana version: 6.0.0_beta2

Elasticsearch version: 6.0.0_beta2

Server OS version: darwin_x86_64

Browser version: chrome latest

Browser OS version: OS X

Original install method (e.g. download page, yum, from source, etc.): from staging

Description of the problem including expected versus actual behavior: When I try to change the panel option to 1d in TSVB, Kibana seems to be stripping away d and just retaining 1 causing it to crash. Same for 1w, 1y, 1m.

Steps to reproduce:

  1. Create a tsvb visualization
  2. Choose the timepicker to 15 mins - make sure you have a working visualization
  3. Click on panel options and try to change the interval to 1d
  4. TSVB breaks with metrics invalid: 1 is not a valid interval message and displays fatal error

Errors in browser console (if relevant):

kibana.bundle.js?v=15884:265 Uncaught (in promise) TypeError: Cannot read property '0' of undefined
    at kibana.bundle.js?v=15884:265
    at Array.reduce (<anonymous>)
    at TimeseriesVisualization (kibana.bundle.js?v=15884:265)
    at StatelessComponent.render (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper._renderValidatedComponentWithoutOwnerOrContext (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper._renderValidatedComponent (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper._updateRenderedComponent (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper._performComponentUpdate (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper.updateComponent (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper.receiveComponent (kibana.bundle.js?v=15884:90)
    at Object.receiveComponent (kibana.bundle.js?v=15884:74)
    at ReactCompositeComponentWrapper._updateRenderedComponent (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper._performComponentUpdate (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper.updateComponent (kibana.bundle.js?v=15884:90)
    at ReactCompositeComponentWrapper.receiveComponent (kibana.bundle.js?v=15884:90)
    at Object.receiveComponent (kibana.bundle.js?v=15884:74)
(anonymous) @ kibana.bundle.js?v=15884:265
TimeseriesVisualization @ kibana.bundle.js?v=15884:265
StatelessComponent.render @ kibana.bundle.js?v=15884:90
_renderValidatedComponentWithoutOwnerOrContext @ kibana.bundle.js?v=15884:90
_renderValidatedComponent @ kibana.bundle.js?v=15884:90
_updateRenderedComponent @ kibana.bundle.js?v=15884:90
_performComponentUpdate @ kibana.bundle.js?v=15884:90
updateComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:74
_updateRenderedComponent @ kibana.bundle.js?v=15884:90
_performComponentUpdate @ kibana.bundle.js?v=15884:90
updateComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:74
updateChildren @ kibana.bundle.js?v=15884:90
_reconcilerUpdateChildren @ kibana.bundle.js?v=15884:90
_updateChildren @ kibana.bundle.js?v=15884:90
updateChildren @ kibana.bundle.js?v=15884:90
_updateDOMChildren @ kibana.bundle.js?v=15884:89
updateComponent @ kibana.bundle.js?v=15884:89
receiveComponent @ kibana.bundle.js?v=15884:89
receiveComponent @ kibana.bundle.js?v=15884:74
updateChildren @ kibana.bundle.js?v=15884:90
_reconcilerUpdateChildren @ kibana.bundle.js?v=15884:90
_updateChildren @ kibana.bundle.js?v=15884:90
updateChildren @ kibana.bundle.js?v=15884:90
_updateDOMChildren @ kibana.bundle.js?v=15884:89
updateComponent @ kibana.bundle.js?v=15884:89
receiveComponent @ kibana.bundle.js?v=15884:89
receiveComponent @ kibana.bundle.js?v=15884:74
_updateRenderedComponent @ kibana.bundle.js?v=15884:90
_performComponentUpdate @ kibana.bundle.js?v=15884:90
updateComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:74
updateChildren @ kibana.bundle.js?v=15884:90
_reconcilerUpdateChildren @ kibana.bundle.js?v=15884:90
_updateChildren @ kibana.bundle.js?v=15884:90
updateChildren @ kibana.bundle.js?v=15884:90
_updateDOMChildren @ kibana.bundle.js?v=15884:89
updateComponent @ kibana.bundle.js?v=15884:89
receiveComponent @ kibana.bundle.js?v=15884:89
receiveComponent @ kibana.bundle.js?v=15884:74
_updateRenderedComponent @ kibana.bundle.js?v=15884:90
_performComponentUpdate @ kibana.bundle.js?v=15884:90
updateComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:74
_updateRenderedComponent @ kibana.bundle.js?v=15884:90
_performComponentUpdate @ kibana.bundle.js?v=15884:90
updateComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:90
receiveComponent @ kibana.bundle.js?v=15884:74
performUpdateIfNecessary @ kibana.bundle.js?v=15884:90
performUpdateIfNecessary @ kibana.bundle.js?v=15884:74
runBatchedUpdates @ kibana.bundle.js?v=15884:74
perform @ kibana.bundle.js?v=15884:74
perform @ kibana.bundle.js?v=15884:74
perform @ kibana.bundle.js?v=15884:74
flushBatchedUpdates @ kibana.bundle.js?v=15884:74
closeAll @ kibana.bundle.js?v=15884:74
perform @ kibana.bundle.js?v=15884:74
batchedUpdates @ kibana.bundle.js?v=15884:91
enqueueUpdate @ kibana.bundle.js?v=15884:74
enqueueUpdate @ kibana.bundle.js?v=15884:91
enqueueElementInternal @ kibana.bundle.js?v=15884:91
(anonymous) @ kibana.bundle.js?v=15884:92
scrollMonitor @ kibana.bundle.js?v=15884:92
_updateRootComponent @ kibana.bundle.js?v=15884:92
_renderSubtreeIntoContainer @ kibana.bundle.js?v=15884:92
render @ kibana.bundle.js?v=15884:92
(anonymous) @ kibana.bundle.js?v=15884:265
Promise resolved (async)
(anonymous) @ kibana.bundle.js?v=15884:265
value @ kibana.bundle.js?v=15884:265
renderFunction @ kibana.bundle.js?v=15884:249
(anonymous) @ kibana.bundle.js?v=15884:249
$broadcast @ commons.bundle.js?v=15884:39
(anonymous) @ kibana.bundle.js?v=15884:247
complete @ commons.bundle.js?v=15884:2
delayed @ commons.bundle.js?v=15884:2
setTimeout (async)
debounced @ commons.bundle.js?v=15884:2
(anonymous) @ commons.bundle.js?v=15884:94
processQueue @ commons.bundle.js?v=15884:39
(anonymous) @ commons.bundle.js?v=15884:39
$digest @ commons.bundle.js?v=15884:39
(anonymous) @ commons.bundle.js?v=15884:39
completeOutstandingRequest @ commons.bundle.js?v=15884:36
(anonymous) @ commons.bundle.js?v=15884:36
setTimeout (async)
Browser.self.defer @ commons.bundle.js?v=15884:36
$evalAsync @ commons.bundle.js?v=15884:39
(anonymous) @ commons.bundle.js?v=15884:39
scheduleProcessQueue @ commons.bundle.js?v=15884:39
then @ commons.bundle.js?v=15884:39
(anonymous) @ commons.bundle.js?v=15884:94
Promise.try @ commons.bundle.js?v=15884:95
(anonymous) @ commons.bundle.js?v=15884:95
Promise.map @ commons.bundle.js?v=15884:95
EventsProvider.Events.emit @ commons.bundle.js?v=15884:94
(anonymous) @ kibana.bundle.js?v=15884:248
ResizeObserver.broadcastActive @ kibana.bundle.js?v=15884:101
ResizeObserverController._updateObservers @ kibana.bundle.js?v=15884:101
ResizeObserverController.refresh @ kibana.bundle.js?v=15884:101
invokeCallback @ kibana.bundle.js?v=15884:101
requestAnimationFrame (async)
timeoutCallback @ kibana.bundle.js?v=15884:101
setTimeout (async)
proxy @ kibana.bundle.js?v=15884:101
childList (async)
(anonymous) @ commons.bundle.js?v=15884:28
access @ commons.bundle.js?v=15884:28
html @ commons.bundle.js?v=15884:28
Notifier._showFatal @ commons.bundle.js?v=15884:94
Notifier.fatal @ commons.bundle.js?v=15884:94
wrapper @ commons.bundle.js?v=15884:1
window.onerror @ commons.bundle.js?v=15884:95

crash_tsvb

screenshot

@bhavyarm bhavyarm added Feature:TSVB TSVB (Time Series Visual Builder) Feature:Visualizations Generic visualization features (in case no more specific feature label is available) bug Fixes for quality problems that affect the customer experience v6.0.0-beta2 labels Aug 29, 2017
@LeeDr
Copy link

LeeDr commented Aug 30, 2017

I think the problem isn't that it's stripping away the d but that it's trying to Auto Apply as you type the 1 on your way to entering 1d. The work-around is to turn off that Auto Apply switch when you're changing the interval.
If you type 1d in some notepad application and then copy/paste that into Visual Builder while Auto Apply is on, that would probably work?

@bhavyarm bhavyarm changed the title Trying to change interval to 1d in TSVB causes fatal error and crashes Kibana Trying to change interval to 1d in TSVB causes fatal error Aug 30, 2017
@simianhacker
Copy link
Member

Fixed with #13440

@bhavyarm
Copy link
Contributor Author

bhavyarm commented Sep 13, 2017

Not fixed in the latest 6.0.0_rc1 snapshot.

@thomasneirynck
Copy link
Contributor

hi @.bhavyarm, I cannot reproduce this using the steps provided on either v6.0.0 or master branches. I believe we can close this. please reopen if this should not be the case, :)

@LeeDr
Copy link

LeeDr commented Sep 27, 2017

Still happens on 6.0.0-rc1 BC4 (the latest as of now). Mine is on an upgrade config, but since Kibana gets completely replaced in the upgrade I don't think that matters.

elasticsearch

@LeeDr LeeDr reopened this Sep 27, 2017
@thomasneirynck
Copy link
Contributor

okay thx, heh, not sure what I did different there..

@simianhacker
Copy link
Member

simianhacker commented Sep 27, 2017

@LeeDr That works as expected, aut is not a valid interval pattern and neither is 1. But when you look at 1d for the Last 15 minutes you get an empty chart (because there isn't 1 days worth of data in the last 15 minutes).

If anything we should change the debounce from 100ms to 350ms so that it doens't trigger while you're typing but that's more of a UX issue.

@LeeDr
Copy link

LeeDr commented Sep 27, 2017

If it were a selection list there wouldn't be the debounce issue. But you also wouldn't have as much flexibility. Maybe even a longer debounce like 500ms? How long could it be before it seemed like it wasn't working?
And yes, it's exactly a UX issue.

@LeeDr
Copy link

LeeDr commented Oct 26, 2017

This seems to have been changed but usability is still very bad in this field and other fields (on Internet Explorer). Now (in 6.0.0-rc2) if I type at a normal speed characters get removed :-(
For example, I type auto and get auo.

Here's me typing metricbeat-* for the index pattern (and I really can type);
elasticsearch

Now that I realize this seems to be specific to IE, I'll file a separate issue.

And I think this one can be closed.

@LeeDr
Copy link

LeeDr commented Oct 26, 2017

I filed #14628 for the problem on IE

@timroes timroes added Team:Visualizations Visualization editors, elastic-charts and infrastructure and removed Feature:Visualizations Generic visualization features (in case no more specific feature label is available) labels Sep 16, 2018
@timroes
Copy link
Contributor

timroes commented Nov 6, 2018

This seems to have been fixed in the meantime. Closing it.

@timroes timroes closed this as completed Nov 6, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes for quality problems that affect the customer experience Feature:TSVB TSVB (Time Series Visual Builder) Team:Visualizations Visualization editors, elastic-charts and infrastructure
Projects
None yet
Development

No branches or pull requests

7 participants