Started on 7/21 around 2pm PST I’m observing query results are being cached for 20 seconds and served to other computers when search queries are using the same search phrase but different since_id and/or max_id query parameters.
- Client A queries for a search phrase with specifying since_id and max_id values. This query returns 100 statuses which is the expected result set.
- Client B on a different computer/IP queries for the same search phrase with specifying DIFFERENT since_id and max_id values. This query returns 0 status which is also the expected result set.
- When client A issues the same identical query from step 1 this time it also gets 0 result where as we’ve already confirmed this query returns 100 statuses at step 1.
- If client A keeps querying every second the results return back to normal exactly 20 seconds later which indicates some sort of cache expiration.
After spending couple of hours on this issue I’ve figured out passing different count values in the same phrase queries helps. It seems count parameter is used in the cache hashkey calculation and a different value results in a cache miss.