Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Account-scoped consumption needs an atomic quota decision and safe retries, while analytical reports can lag. This Kotlin/Ktor API locks the authenticated account in Postgres, commits the daily counter and immutable event together, and retains request IDs across UTC days. ClickPipes replicates only events to ClickHouse; bounded, read-only Java-client reports apply FINAL and tombstone filtering and explicitly declare eventual consistency. The application never dual writes.
Includes explicit Cloud provisioning/TLS/roles/publication/custom-ordering setup and cleanup, versioned migrations/seed, pinned Gradle/JDK/dependency locks, API examples, meaningful opt-in Cloud controls, and credential-free unit/build CI.
Validation in an isolated native Ubuntu ARM 64 VM against own Cloud PostgreSQL 18.6/ClickHouse 26.6.1.2191:4 unit +2 live TLS/midnight controls; two 12-client bursts each completed in 12 HTTPattempts without 503 (one debit for same ID; exact 100 quota); modest 3-client no-retry control; cross-account/auth/input/role denials; post-counter insertion-failure rollback; actual snapshot/CDC; paused pipeline while operational quota advanced; both analytical slots denied/recovered in same client while Postgres writes succeeded; exact final day/feature sums/counts after resume; privileged-maintenance tombstone identity; genuine runtime-only process restart. Fresh source build succeeded without database/Cloud credentials. Earlier 5-second lock timeout was diagnosed and corrected to bounded 20-second SQL/25-second socket limits; no performance or ingestion-SLA claim.
The companion article and private evidence stay local for editorial review. No published article URL, deployment, billing integration, retention policy or resync claim.