rwadurian/backend/services/wallet-service/prisma/migrations
hailin 8326f8c35c fix(cdc): 添加 Debezium heartbeat 机制防止 WAL 堆积
问题背景:
- PostgreSQL pg_wal 目录从 80MB 膨胀到 60.4GB,导致磁盘使用率达到 96%
- 根因: wallet/planting/referral 三个数据库的业务表长期无写入
- 虽然 Debezium 有 heartbeat 配置,但未配置 heartbeat.action.query
- 导致 replication slot 的 restart_lsn 无法推进,WAL 文件无法被清理

解决方案:
1. 在 wallet/planting/referral 三个服务中添加 debezium_heartbeat 表
2. 配置 Debezium connector 的 heartbeat.action.query
3. 每 60 秒自动执行 UPDATE 语句推进 restart_lsn

修改内容:
- wallet-service/prisma/schema.prisma: 添加 DebeziumHeartbeat model
- planting-service/prisma/schema.prisma: 添加 DebeziumHeartbeat model
- referral-service/prisma/schema.prisma: 添加 DebeziumHeartbeat model
- scripts/debezium/wallet-connector.json: 添加 heartbeat.action.query 配置
- scripts/debezium/planting-connector.json: 添加 heartbeat.action.query 配置
- scripts/debezium/referral-connector.json: 添加 heartbeat.action.query 配置
- 新增三个服务的 Prisma migration 文件

效果:
- pg_wal 从 60.4GB 降至 80.2MB
- 磁盘使用率从 96% 降至 40%
- replication slot lag 从 51-60GB 降至 KB 级别

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 17:42:41 -08:00
..
20241204000000_init fix(wallet-service): update init migration memo column to TEXT 2026-01-06 08:30:07 -08:00
20241210000001_add_processed_events feat(sync): implement Outbox Pattern for reward-service to wallet-service sync 2025-12-10 23:26:49 -08:00
20241213000000_seed_system_accounts fix(wallet-service): 统一系统账户 seed migration 2026-01-06 09:12:17 -08:00
20241214000000_add_pending_rewards feat: 省市团队账户及待领取奖励逐笔追踪 2025-12-13 03:32:47 -08:00
20241214100000_add_share_right_pool_account feat(wallet-service): 新增分享权益池账户S0000000005 2025-12-13 18:53:21 -08:00
20241216000000_add_version_column fix(db): 添加缺失的数据库迁移文件 2025-12-15 21:53:31 -08:00
20241222000000_add_withdrawal_fee_config feat: 多项业务功能增强 2025-12-22 19:00:02 -08:00
20241223000000_add_has_planted feat: 已认种用户分享权益直接进入可结算状态 2025-12-22 21:10:49 -08:00
20241223100000_add_internal_transfer_fields feat: 实现ID-to-ID内部转账功能 2025-12-22 22:22:47 -08:00
20260103100000_add_fiat_withdrawal feat(fiat-withdrawal): add complete fiat withdrawal system 2026-01-03 06:39:11 -08:00
20260104000000_add_offline_settlement_deductions feat(wallet-service): add offline settlement deduction feature 2026-01-04 06:56:39 -08:00
20260106000000_add_fee_collection_account fix(wallet-service): 统一系统账户 seed migration 2026-01-06 09:12:17 -08:00
20260106100000_add_system_withdrawal_order refactor(statistics): 删除认种统计页面不相关的mock功能 2026-01-06 10:00:50 -08:00
20260107000000_memo_to_text feat(wallet-service): add migration for memo column type change to TEXT 2026-01-06 08:27:12 -08:00
20260107100000_add_outbox_events feat(wallet-service): 实现 Outbox Pattern 保证系统划转事件发布的可靠性 2026-01-07 05:15:07 -08:00
20260120000000_add_debezium_heartbeat fix(cdc): 添加 Debezium heartbeat 机制防止 WAL 堆积 2026-01-19 17:42:41 -08:00