Skip to content

"X-Kevinrob-Cache: MISS" although response is from cache #140

@rincler

Description

@rincler

Hi!

I have two layers of cache: memory and redis:

...
$stack->push(
  new CacheMiddleware(new GreedyCacheStrategy(new VolatileRuntimeStorage(), 0)),
  'identity-map'
);

$stack->push(
  new CacheMiddleware(new GreedyCacheStrategy(new Psr16CacheStorage($redisCache), 60)),
  'cache'
);
...

Suggest we have cached response in redis. We make $client->request().
I expect: X-Kevinrob-Cache: HIT
I see: X-Kevinrob-Cache: MISS

redis middleware set X-Kevinrob-Cache to HIT in

$cacheEntry->getResponse()->withHeader(self::HEADER_CACHE_INFO, self::HEADER_CACHE_HIT)
, but then memory middleware set X-Kevinrob-Cache to MISS in
$response = $response->withHeader(self::HEADER_CACHE_INFO, self::HEADER_CACHE_MISS);

Maybe need to check X-Kevinrob-Cache header before set it to MISS ?

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions