Skip to content

fix: silence ChromaDB telemetry warnings and CoreML segfault on Apple Silicon#236

Merged
bensig merged 1 commit intoMemPalace:mainfrom
marerem:fix/silence-chromadb-telemetry-warnings
Apr 8, 2026
Merged

fix: silence ChromaDB telemetry warnings and CoreML segfault on Apple Silicon#236
bensig merged 1 commit intoMemPalace:mainfrom
marerem:fix/silence-chromadb-telemetry-warnings

Conversation

@marerem
Copy link
Copy Markdown

@marerem marerem commented Apr 8, 2026

Summary

Fixes two ChromaDB compatibility issues in a single 10-line change to mempalace/__init__.py:

  • Telemetry spam: ChromaDB 0.6.x bundles a Posthog telemetry client whose capture() signature is incompatible with the installed posthog library, producing Failed to send telemetry event ... capture() takes 1 positional argument but 3 were given on every operation. Fixed by raising the chromadb.telemetry.product.posthog logger threshold to CRITICAL.

  • CoreML segfault on Apple Silicon (ChromaDB null pointer crash after ~8,400 drawers on macOS ARM64 #74): ONNX Runtime's CoreML execution provider crashes with SIGSEGV during vector queries on macOS ARM64. Fixed by auto-setting ORT_DISABLE_COREML=1 via os.environ.setdefault() so it forces CPU execution while still respecting any user-provided override.

Root cause

The telemetry error originates in chromadb/telemetry/product/posthog.py:61 where posthog.capture(user_id, event_name, properties) is called with 3 positional args, but the bundled posthog library's capture() only accepts 1. Setting anonymized_telemetry=False in ChromaDB Settings does not prevent the call — it only sets posthog.disabled = True, which the broken posthog stub doesn't honor.

Changes

File Change
mempalace/__init__.py Silence telemetry logger + auto-set ORT_DISABLE_COREML=1 on ARM64 macOS

Test plan

  • All 101 tests pass
  • Zero lint errors
  • mempalace search produces clean output with no telemetry warnings
  • mempalace search no longer segfaults on macOS ARM64 (tested on M-series Mac)

Relates to #74

… Silicon

ChromaDB 0.6.x bundles a Posthog telemetry client whose capture()
signature is incompatible with the installed posthog library, producing
noisy "Failed to send telemetry event" stderr warnings on every
operation. Silence by raising the logger threshold to CRITICAL.

ONNX Runtime's CoreML execution provider segfaults during vector
queries on macOS ARM64 (issue MemPalace#74). Auto-set ORT_DISABLE_COREML=1
on Apple Silicon to force CPU execution, while respecting any
user-provided override via os.environ.setdefault().

Made-with: Cursor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants