[Developers] different query response between queryeditor and mqlread service

Augusto Callejas acallejas at appliedminds.com
Tue Jan 15 20:08:25 UTC 2008


jonathan-

i see the problem below has to do with querying after recent write
operations.  however, i'm not doing any write operations.  the types and
data i'm querying have been in freebase for a while now.

augusto.


On 1/15/08 11:15 AM, "Jonathan W. Lowe" <jlowe at giswebsite.com> wrote:

> Augusto,
> 
> It sounds like you are encountering the same or a similar problem to the
> one described below.
> 
> Jonathan
> 
> -------- Forwarded Message --------
> From: Kirrily Robert <skud at infotrope.net>
> Reply-To: For discussions about MQL, Freebase API and apps built on
> Freebase <developers at freebase.com>
> To: For discussions about MQL, Freebase API and apps built on Freebase
> <developers at freebase.com>
> Subject: Re: [Developers] sandbox caching old values, slow expiration?
> Date: Sun, 30 Dec 2007 01:43:06 +1100
> 
> On Dec 30, 2007 12:51 AM, Coral Link <corallink at gmail.com> wrote:
>> Hi, quite a few times while working on my app I've run into instances when
>> I've made updates/changes to objects in the sandbox BUT when I query the
>> just changed object, I get its old values.  I  run my queries in
>> queryeditor, and the values returned are the updated ones. After some
>> magical period, the mqlwrite/mqlread service starts showing the expected
>> values.
>> 
>> Is there some sort of caching going on?  What are the timeouts if any, to
>> pull the most current values from the repository?  Is there some sort of
>> tickle mechanism to ask mqlread to pull a fresh copy instead of a cached on?
> 
> Sounds like the same thing I discovered a few weeks back.  The (short)
> thread about it can be found at
> http://lists.freebase.com/pipermail/developers/2007-November/000932.html,
> but in short, "that's not a bug, it's a feature!"
> 
> Here's some quoted text from the reply I got:
> 
>> Its part of our caching strategy - the idea is that if a client hasn't
>> done a write, then it doesn't need to see the most updated result of a
>> query. so I'm guessing you're writing to www.freebase.com via a browser,
>> but you have another script that is doing the read?
>> 
>> There is actually a 2nd cookie called "mwLastWriteTime" that stores a
>> token that tells us how current your data is. If present, it tells us
>> how current your results should be.. if NOT present, it means "I don't
>> care how current my data is" and may give you even older data.
>> 
>> If you really, really, need to refresh this cookie to get new data, you
>> should do an empty HTTP POST to /api/service/mqlwrite. I encourage you
>> to do this sparingly - this is not a generally supported mechanism yet,
>> but it should continue to work for the near future.
> 
> I wasn't using sandbox when I encountered the problem, but it does
> sound like a similar sort of thing.
> 
> K.
> 
> 
> _______________________________________________
> Developers mailing list
> Developers at freebase.com
> http://lists.freebase.com/mailman/listinfo/developers




More information about the Developers mailing list