# Stale OPcache

> OPcache runs with validate_timestamps off, and a deploy did not reset it. The PHP servers kept running the old code against the new schema, and a share of requests failed.

## What happens

OPcache runs with validate_timestamps off, and a deploy did not reset it. The PHP servers kept running the old code against the new schema, and a share of requests failed.

## How to prevent it

A CI/CD Pipeline resets OPcache on every deploy. A restart clears the cache by hand.

The postmortem opens the first of these that you do not own yet:

- [Continuous delivery](https://wiki.playquorum.dev/research/ci.md)

## Components it hits

[App Server](https://wiki.playquorum.dev/components/server.md)

## Facts

SEV3 Stale OPcache
- **First Era:** [Pre-seed](https://wiki.playquorum.dev/eras/pre-seed.md)
- **Starts at:** SEV3
- **Escalates to:** SEVnull
- **Lasts:** 1.5 min

## See also

- [Incidents](https://wiki.playquorum.dev/incidents.md)

Source: https://wiki.playquorum.dev/incidents/stale-opcache
