You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
BugFor errors / faults / flaws / inconsistencies etc.MajorIndicates the severity or impact or benefit of an issue is much higher than normal but not critical.
It has been reported at least once that an API request was returning more "Unique visitors" than "Actions". This is un-expected as we should always have: nb_uniq_visitors <= nb_visits <= nb_actions
(request was method=VisitsSummary.get&idSite=10435&period=range&date=2015-11-16,2015-12-03 )
Questions:
How can we reproduce this issue?
What is the root cause?
Only one possible explanation we came up with so far:
imagine the period=range request includes today's data, and if the "Unique visitors processing" archiving query runs a few seconds after the standard metrics processing... then imagine that a new visitor visits today's in the few seconds right after the standard metrics processing and right before the unique visitors processing... then we could get nb_uniq_visitors = 2 while nb_visits = 1...
The text was updated successfully, but these errors were encountered:
personally, I don't like this approach to resolve this issue. This may work as a quick fix, but for the long term it looks like a hack.
Here are my ideas:
(preferred but risky) After starting the archiving process, save current timestamp and calculate ALL reports for given site ID based on this timestamp. This will make sure that all reports are consistent and based on the same data set. Of course there will be some issue with the visit_last_action_time (we may report less visits for today) but still this is better than random differences because of new visits during archiving process.
Calculate the number of uniques at the beginning of archive process for each period.
This might be something for the archiver refactoring #7470 where we can think about such cases. Right now it's not really doable since we need to rewrite the archiver first (and possibly also allow different backends like elastic search etc).
If we do this first we have pretty much the same problem. Only solution would be probably actually to save the last action time and to always use a fixed one.
mattab
added
the
Major
Indicates the severity or impact or benefit of an issue is much higher than normal but not critical.
label
Jan 29, 2016
BugFor errors / faults / flaws / inconsistencies etc.MajorIndicates the severity or impact or benefit of an issue is much higher than normal but not critical.
It has been reported at least once that an API request was returning more "Unique visitors" than "Actions". This is un-expected as we should always have:
nb_uniq_visitors <= nb_visits <= nb_actions
Here is the API response that was at least once:
(request was
method=VisitsSummary.get&idSite=10435&period=range&date=2015-11-16,2015-12-03
)Questions:
Only one possible explanation we came up with so far:
period=range
request includes today's data, and if the "Unique visitors processing" archiving query runs a few seconds after the standard metrics processing... then imagine that a new visitor visits today's in the few seconds right after the standard metrics processing and right before the unique visitors processing... then we could get nb_uniq_visitors = 2 while nb_visits = 1...The text was updated successfully, but these errors were encountered: