← Back to team overview

graphite-dev team mailing list archive

Re: [Question #227373]: Graphite responds with no data - why?

 

Question #227373 on Graphite changed:
https://answers.launchpad.net/graphite/+question/227373

Curt Kersey gave more information on the question:
I have found the problem, but I am defer to the experts on if (a) this
is the expected behavior, and (b) what is the correct fix?

In webapp/graphite/storage.py there has been logic added to the find()
in class Storage.   The logic is looking for an intersection in the
times that will be used to do the actual query.  In my case, I have a
whisper data file that has not received any metrics in 10 days.  This
causes the "end" time period in intervals.py:intersect() to be selected
as the date / time from 10 days ago.  The "start" time in the same
function is selected as 24 hours ago since that is the default time
interval if not &from and &until is sent with the query.  Since my "end"
time is before my "start" time, there is no intersection in the time
intervals, which causes it to detect an empty set.  No query to graphite
is done based on that, and an empty set is returned for the results of
the query.

What I would expect to happen is that the "end" time would be
time.time(), and the query would return a bunch of None values for the
query.  In fact, if I change the logic in readers.py:get_intervals() to
use time.time() as the "end" time instead of the modification time of
the whisper data file, then I do get a response of all None's to be
sent.  The dashboard I am creating depends on receiving the None values
as I actually do a transformNull() on the data to make it all zero's.

Let me know if this is working as expecting.  I will plan to create a
bug based on what I found as well.

Thanks,
--Curt

-- 
You received this question notification because you are a member of
graphite-dev, which is an answer contact for Graphite.