Commit graph

4 commits

Author SHA1 Message Date
Hermes Local
9dca3f1c85 fix(mem0_oss): fix misrouted last-attempt lock error in _get_memory
The else branch for non-lock errors was incorrectly triggered on the
final retry attempt of a Qdrant lock error, causing it to log ERROR
and raise immediately rather than fall through to the lock-exhausted
path. This tripped the circuit breaker during startup when WebUI and
gateway processes competed for the lock.

Fix: add a comment to skip the else on last lock-error attempt, and
downgrade the exhausted-retries log from ERROR to WARNING since lock
contention is expected and not a hard failure.
2026-04-24 10:49:13 +00:00
Hermes Local
994c6f9e98 fix(mem0_oss): retry Qdrant lock contention in _get_memory with backoff
Add _LOCK_RETRY_ATTEMPTS (10) and _LOCK_RETRY_DELAY_S (0.8s) constants.
Retry loop in _get_memory() retries on Qdrant portalocker errors with
jitter, non-lock errors still fail fast. Add explicit del mem after each
operation to release the lock ASAP. Fix record_failure ordering in search
and add so lock errors are tracked correctly.
2026-04-24 10:40:08 +00:00
bsgdigital
437047af17 refactor(mem0_oss): update plugins/memory/mem0_oss/__init__.py 2026-04-24 11:53:41 +02:00
bsgdigital
eb98e9202e feat(mem0_oss): add plugins/memory/mem0_oss/__init__.py 2026-04-24 11:49:54 +02:00