Page MenuHomePhabricator

Query service results are missing some variables on some servers
Closed, InvalidPublic

Description

Queries like select * { ?item wdt:P31 ?value } limit 100 are suddenly sometimes not including ?item in the results.

The behaviour seems to be specific to certain servers. According to @Lucas_Werkmeister_WMDE, it's happening with results from wdqs1004 and 1012, whereas 1005, 1007 and 1013 are working fine.

Related Objects

Mentioned In
P27549 T307635.py
Mentioned Here
P27549 T307635.py

Event Timeline

I tested this with a little script (P27549) and it looks like half of the servers I can reach consistently reply without ?item (the numbers are response counts with / without ?item):

good={'wdqs1005': 14, 'wdqs1013': 10, 'wdqs1007': 21}
bad={'wdqs1006': 23, 'wdqs1004': 18, 'wdqs1012': 14}

(I recall that there are wdqs2xxx servers in codfw but due to the way geoip is setup they barely receive traffic; I don’t remember if there are other public wdqs1xxx servers in eqiad.)

This is extremely weird and I suspect a serious blazegraph bug that causes this. I could not reproduce the problem at the moment running the python script provided but it might certainly happen again in the future.
I'm not sure how to proceed here but perhaps capturing the full blazegraph response when it occurs might help?

I looked at the query results JSON in the dev tools and don’t remember seeing anything unusual in there; an explain might be more useful, perhaps. (Assuming this issue happens again at all, of course…)

Leaving this opened at the moment. Please report other similar issues as comments on this ticket. If we don't see a recurring pattern, we're just going to close this in a week or two.

No new report for 2 weeks, let's call this a transient error for the moment. Please re-open if you have other examples of this issue.