Elektra  0.8.19
Internal KeySet Cache

Issue

When doing kdbGet() possible more keys are returned which might be confusing. When doing a second kdbGet() with a new keyset no keys might be returned, because it is up-to-date.

When doing kdbSet() a deep duplication is needed.

Idea: keep a duplicated keyset internally. Return (non-deep?) duplications exactly of the parts as requested.

Constraints

Assumptions

Considered Alternatives

Decision

Use global plugin to implement internal cache.

Argument

Semantics can be provided without additional code or overhead in the core.

Implications

Related decisions

Notes

internal caches lead to duplication of memory consumption (most of it is avoided by reference counting, though)

in some cases caches cannot be avoided? -> filesys, databases?

cache discussion: