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
0.10.0-nightly-8004f11 crashing multiple times a day! #5303
Comments
ps. The queries are coming in from the latest grafana |
@jhhayden I notice all of these queries are basically |
Every panic is preceded by a query using regex. I cannot seem to trigger it on demand though |
Interesting. So it appears that having a regex for the measurement is necessary but not sufficient. Since the same query doesn't produce the same behavior, there must be some other internal requirement to expose the bug. The line that throws the panic is in the query return sorting code: https://github.com/influxdata/influxdb/blob/0.9.6/tsdb/raw.go#L229. It highly implicates this function: chunkedOutput.Values as sometimes outputting an invalid data structure. We now exceed my ability to investigate. @benbjohnson, any intuition for why that code might cause a panic intermittently, perhaps correlated with regex measurements? |
@beckettsean is close, it's that From examining the code it looks like no data is available to be returned (or no mappers are in existence). Obviously we handle cases like this in our code, because lots of queries return no data and don't cra |
This is unlikely to be tsm-specific so removing that label. |
At least, |
I've seen this as well:
|
I know how to recreate this error! Due to a crash in my testDB and the fact I was troubleshooting a different issue for 4 days, I had a db with a gap of 4 days of no data. When I restarted the db, it crashed as soon as a query came in from grafana. [query] 2016/01/27 23:21:53 SELECT recBytes FROM elb."default".elbs WHERE elb =~ /elb-api-server$/ AND time > now() - 1d goroutine 81 [running]: So it appears that if there is no data (or it can't find any within parameters), it crashes. I hope this helps. Question: Is it worth upgrading to the latest nightly build? |
@jhhayden That's very helpful, thank you. It may be worth upgrading, though this issue will probably still occur. If this is just a test system, then I'd say go for it. If you have production/live data, then you may want to hold off until the next official release (which should be GA sometime next week). |
@jhhayden if you are willing to use nightlies, the 0.11 nightly has a completely refactored query engine where this shouldn't happen. We still want to fix this for people using 0.10 in a patch fix, but we're still having trouble reproducing it on our own machines. If I push up a branch with a small addition to add a Thanks. |
I'd love to! Just let me know what to install. John Hayden On Wed, Feb 17, 2016 at 1:13 PM, Jonathan A. Sternberg <
|
If you can build from the Thank you! |
First shot at building a Go project. Failed of course: ;-) Here is what ./package.sh -t rpm 0.11 Starting package process... Current branch is js-5303-mapped-chunks-nil-panic. Start packaging this
John Hayden On Wed, Feb 17, 2016 at 1:54 PM, Jonathan A. Sternberg <
|
If you have the go tools installed, you should just be able to do this:
|
git fetch
On Wed, Feb 17, 2016 at 2:40 PM, Jonathan A. Sternberg <
|
@jhhayden you need to reset the git repository. You also shouldn't be building as root if you can avoid it. Where are you attempting to build influxd? Do you have the go compiler installed and the go workspace setup for building? |
I tried following the instructions at CONTRIBUTING.md Agreed about the root thing but this is just a test machine. I'll try John Hayden On Wed, Feb 17, 2016 at 2:49 PM, Jonathan A. Sternberg <
|
If you have go installed, you should be able to just do this in a new directory.
Then you can just run the binary at |
go build -o /tmp/influxd ./cmd/influxd John Hayden On Wed, Feb 17, 2016 at 3:07 PM, Jonathan A. Sternberg <
|
Did you do the |
yes John Hayden On Wed, Feb 17, 2016 at 3:13 PM, Jonathan A. Sternberg <
|
Have you tried checking if this folder actually exists? Otherwise you can try installing it without gvm, but instead directly through the tarball. Start a new bash session to remove any environment variables previously set by gvm, then attempting to use the build instructions from above again. |
I looked more closely at the output from the go get command and noticed package github.com/influxdb/influxdb: /tmp/influxbuild/src/ All the lines say from .../influxdata/infludb should be influxdb/influxdb. Could this be the cause because of the company name change a while ago? John Hayden On Wed, Feb 17, 2016 at 3:21 PM, Jonathan A. Sternberg <
|
Ah, yes. That would be it.
|
@jhhayden Can you try using the
Where the resulting binaries should be located in |
Ross McDonald's plan worked! I will stop and then rerun influx using the Thanks again John Hayden On Wed, Feb 17, 2016 at 3:34 PM, Ross McDonald notifications@github.com
|
@jhhayden have you experience any crash yet or had any ability to test the change? |
No crashes at all. Its looking good but I have gone as long as 2 days John Hayden On Thu, Feb 18, 2016 at 11:42 AM, Jonathan A. Sternberg <
|
Then I'm merging the PR and we'll have this as part of 0.10.1. |
I am accepting traffic via http and also udp. The engine is tsm1 , a single server and on a completely clean install. It always "appears" to crash right after a query but the same query can be run again after the restart and work fine. Here are snippets of some crashes from a few days ago:
If there is some kind of tracing/debugging switch I can turn on to help debug this, let know.
John Hayden
The text was updated successfully, but these errors were encountered: