Skip to content

feat: add post_highlight table to ClickHouse sync#3758

Merged
pnvasanth merged 1 commit intomainfrom
add-post-highlight-clickhouse-sync-v2
Mar 30, 2026
Merged

feat: add post_highlight table to ClickHouse sync#3758
pnvasanth merged 1 commit intomainfrom
add-post-highlight-clickhouse-sync-v2

Conversation

@pnvasanth
Copy link
Copy Markdown
Contributor

Summary

  • Add public.post_highlight to the Debezium table.include.list in ClickHouse sync config to replicate the table to ClickHouse

Test plan

  • Verify ClickHouse sync picks up the new table after deployment

@pnvasanth pnvasanth self-assigned this Mar 30, 2026
@pulumi
Copy link
Copy Markdown

pulumi Bot commented Mar 30, 2026

🍹 The Update (preview) for dailydotdev/api/prod (at 8463635) was successful.

✨ Neo Explanation

This is a standard application version rollout updating all services and scheduled jobs to the new build, with an additional ClickHouse sync config change that will cause a brief interruption to the sync service during its pod replacement.

Root Cause Analysis

A new version of the API application has been deployed. All services are being updated from the previous build to a new build, and the ClickHouse sync service has a configuration change that requires replacement.

Dependency Chain

Two parallel changes are propagating through the system:

  1. Application rollout — The new container image version is being rolled out across all 8 deployments (main API, background worker, WebSocket, private, Temporal, personalized digest, worker-job, and BG) and all 38 CronJobs. Migration Jobs from the previous version are being deleted and new ones for the current version are being created — one for the primary database (TypeORM) and one for ClickHouse.

  2. ClickHouse sync config change — The clickhouse-sync-clickhouse-sync-config Secret has changed data (checksum changed), which forces a replacement of both the Secret and the clickhouse-sync Deployment that mounts it. This service will experience a brief restart using a Recreate strategy (meaning the old pod is terminated before the new one starts).

Risk analysis

The clickhouse-sync Deployment uses a Recreate strategy, which means there will be a brief gap in ClickHouse sync coverage while the pod is replaced. No stateful storage resources (databases, buckets) are being deleted or replaced.

Resource Changes

    Name                                               Type                           Operation
~   vpc-native-rotate-daily-quests-cron                kubernetes:batch/v1:CronJob    update
~   vpc-native-calculate-top-readers-cron              kubernetes:batch/v1:CronJob    update
+   vpc-native-api-clickhouse-migration-627e405d       kubernetes:batch/v1:Job        create
~   vpc-native-update-tags-str-cron                    kubernetes:batch/v1:CronJob    update
~   vpc-native-sync-subscription-with-cio-cron         kubernetes:batch/v1:CronJob    update
~   vpc-native-channel-highlights-cron                 kubernetes:batch/v1:CronJob    update
~   vpc-native-personalized-digest-deployment          kubernetes:apps/v1:Deployment  update
~   vpc-native-validate-active-users-cron              kubernetes:batch/v1:CronJob    update
+-  clickhouse-sync-clickhouse-sync                    kubernetes:apps/v1:Deployment  create-replacement
~   vpc-native-user-profile-updated-sync-cron          kubernetes:batch/v1:CronJob    update
-   vpc-native-api-db-migration-af1d8cf3               kubernetes:batch/v1:Job        delete
+-  clickhouse-sync-clickhouse-sync-config             kubernetes:core/v1:Secret      create-replacement
~   vpc-native-update-views-cron                       kubernetes:batch/v1:CronJob    update
~   vpc-native-post-analytics-clickhouse-cron          kubernetes:batch/v1:CronJob    update
~   vpc-native-update-source-public-threshold-cron     kubernetes:batch/v1:CronJob    update
~   vpc-native-temporal-deployment                     kubernetes:apps/v1:Deployment  update
~   vpc-native-rotate-weekly-quests-cron               kubernetes:batch/v1:CronJob    update
~   vpc-native-squad-posts-analytics-refresh-cron      kubernetes:batch/v1:CronJob    update
~   vpc-native-update-source-tag-view-cron             kubernetes:batch/v1:CronJob    update
~   vpc-native-update-highlighted-views-cron           kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-channel-highlights-cron           kubernetes:batch/v1:CronJob    update
-   vpc-native-api-clickhouse-migration-af1d8cf3       kubernetes:batch/v1:Job        delete
~   vpc-native-clean-zombie-images-cron                kubernetes:batch/v1:CronJob    update
~   vpc-native-user-profile-analytics-clickhouse-cron  kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-zombie-user-companies-cron        kubernetes:batch/v1:CronJob    update
~   vpc-native-update-current-streak-cron              kubernetes:batch/v1:CronJob    update
~   vpc-native-daily-digest-cron                       kubernetes:batch/v1:CronJob    update
~   vpc-native-user-posts-analytics-refresh-cron       kubernetes:batch/v1:CronJob    update
~   vpc-native-bg-deployment                           kubernetes:apps/v1:Deployment  update
~   vpc-native-clean-stale-user-transactions-cron      kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-gifted-plus-cron                  kubernetes:batch/v1:CronJob    update
~   vpc-native-update-tag-recommendations-cron         kubernetes:batch/v1:CronJob    update
~   vpc-native-generate-search-invites-cron            kubernetes:batch/v1:CronJob    update
~   vpc-native-update-achievement-rarity-cron          kubernetes:batch/v1:CronJob    update
~   vpc-native-personalized-digest-cron                kubernetes:batch/v1:CronJob    update
~   vpc-native-deployment                              kubernetes:apps/v1:Deployment  update
~   vpc-native-hourly-notification-cron                kubernetes:batch/v1:CronJob    update
~   vpc-native-expire-super-agent-trial-cron           kubernetes:batch/v1:CronJob    update
~   vpc-native-private-deployment                      kubernetes:apps/v1:Deployment  update
~   vpc-native-check-analytics-report-cron             kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-zombie-opportunities-cron         kubernetes:batch/v1:CronJob    update
... and 12 other changes

@pnvasanth pnvasanth merged commit aa8846c into main Mar 30, 2026
10 checks passed
@pnvasanth pnvasanth deleted the add-post-highlight-clickhouse-sync-v2 branch March 30, 2026 13:04
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.

1 participant