---
url: /errors/pinia_colada_r0006.md
---
# PINIA\_COLADA\_R0006: mutation entry reused

* Level: error (logged, dev only)

## What happened

`mutationCache.mutate()` was called with a mutation entry that already settled or that has an ongoing request. Each call of a mutation must use a fresh entry: reusing one overwrites its state and can mix up concurrent invocations.

## How to fix it

Re-ensure before every mutation call. `ensure()` takes the entry from `create()` plus the variables, and returns a fresh entry when the one you pass was already used:

```ts
const mutationCache = useMutationCache()
let entry = mutationCache.create(options)

// ✅ re-ensure before each call to get a fresh entry
entry = mutationCache.ensure(entry, vars)
mutationCache.mutate(entry)

entry = mutationCache.ensure(entry, vars)
mutationCache.mutate(entry)

// ❌ reusing the same ensured entry for a second call
entry = mutationCache.ensure(entry, vars)
mutationCache.mutate(entry)
mutationCache.mutate(entry)
```

If you are not calling `mutationCache.mutate()` manually, this is probably a bug in Pinia Colada: please open an issue on GitHub with a boiled down reproduction.

## Common causes

* Caching a mutation entry and mutating it multiple times
* Calling `mutationCache.mutate()` again before the previous call finished with the same entry
