[#CCoinsCacheEntry-Flags] = xref:CCoinsCacheEntry.adoc[CCoinsCacheEntry]::Flags :relfileprefix: ../ :mrdocs: Per‐entry state flags controlling how an entry is flushed to the parent cache. == Synopsis Declared in `<coins.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- enum Flags; ---- == Members [cols="1,4"] |=== | Name| Description | `DIRTY` | DIRTY means the CCoinsCacheEntry is potentially different from the version in the parent cache. Failure to mark a coin as DIRTY when it is potentially different from the parent cache will cause a consensus failure, since the coin's state won't get written to the parent when the cache is flushed. | `FRESH` | FRESH means the parent cache does not have this coin or that it is a spent coin in the parent cache. If a FRESH coin in the cache is later spent, it can be deleted entirely and doesn't ever need to be flushed to the parent. This is a performance optimization. Marking a coin as FRESH when it exists unspent in the parent cache will cause a consensus failure, since it might not be deleted from the parent when this cache is flushed. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#