Skip to content

Conversation

@nicklasl
Copy link
Member

@nicklasl nicklasl commented Dec 10, 2025

Implements gRPC-based remote materialization storage to support sticky assignments and materialized segments without requiring custom infrastructure.

Key Changes:

  • Proto updates: Added WriteMaterializedOperations and ReadMaterializedOperations RPCs to internal_api.proto
  • RemoteMaterializationStore: New implementation that stores materialization data via gRPC to Confidence service with client secret authentication
  • One-line setup: Enable with UseRemoteMaterializationStore: true in ProviderConfig
  • Configurable timeouts: Separate env vars for read (default: 2s) and write (default: 5s) operations
    • CONFIDENCE_MATERIALIZATION_READ_TIMEOUT_SECONDS
    • CONFIDENCE_MATERIALIZATION_WRITE_TIMEOUT_SECONDS
  • Comprehensive tests: 11 integration tests covering error propagation, timeouts, auth failures, and happy paths

Usage:

  provider, err := confidence.NewProvider(ctx, confidence.ProviderConfig{
      ClientSecret: "your-client-secret",
      UseRemoteMaterializationStore: true,
  })

@nicklasl nicklasl marked this pull request as ready for review December 10, 2025 07:57
@nicklasl nicklasl merged commit d700af2 into main Dec 10, 2025
12 checks passed
@nicklasl nicklasl deleted the go/remote-mat-store branch December 10, 2025 11:52
@github-actions github-actions bot mentioned this pull request Dec 8, 2025
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.

3 participants