---
url: /errors/pinia_colada_r0004.md
---
# PINIA\_COLADA\_R0004: entry has no options

* Level: error (thrown, dev only)

## What happened

`queryCache.refresh(entry)` or `queryCache.fetch(entry)` was called with an entry that has no options. Entries only receive options once they are used by `useQuery()` (or ensured with options); entries created indirectly (e.g. by `setQueryData()` on a key that was never used by a query) cannot be fetched because there is no `query` function associated with them.

## How to fix it

Only refresh or fetch entries that have been initialized by a query:

```ts
const queryCache = useQueryCache()

const entry = queryCache.getEntries({ key: ['todos'], exact: true }).at(0)
// only fetch entries that have options
if (entry?.options) {
  await queryCache.refresh(entry)
}
```

If the entry was expected to have options, this is probably a bug in Pinia Colada: please open an issue with a boiled down reproduction.

## Common causes

* Calling `queryCache.fetch()`/`queryCache.refresh()` on an entry created only via `setQueryData()` or hydration
* Iterating over all entries with `getEntries()` and fetching them without filtering out option-less entries
