在前后端开发联调前 的提交20260223
This commit is contained in:
69
export/SYSTEM/LOGS/2026-02-21__etl_run_result_v5.md
Normal file
69
export/SYSTEM/LOGS/2026-02-21__etl_run_result_v5.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# 第五次 ETL 执行结果报告
|
||||
|
||||
- execution_id: `fe87144a-687d-4ce0-9b79-6bd0186b2be3`
|
||||
- 执行时间: 2026-02-21 20:19:52 ~ 20:31:29(约 11m37s)
|
||||
- exit_code: 0
|
||||
- 总任务数: 31
|
||||
|
||||
## 成功任务(10 个)
|
||||
|
||||
| # | 任务 |
|
||||
|---|------|
|
||||
| 1 | DWS_ASSISTANT_DAILY |
|
||||
| 2 | DWS_ASSISTANT_MONTHLY |
|
||||
| 3 | DWS_ASSISTANT_CUSTOMER |
|
||||
| 4 | DWS_ASSISTANT_SALARY |
|
||||
| 5 | DWS_ASSISTANT_FINANCE |
|
||||
| 6 | ODS_SETTLEMENT_RECORDS ODS 任务完成 |
|
||||
| 7 | ODS_PAYMENT ODS 任务完成 |
|
||||
| 8 | ODS_REFUND ODS 任务完成 |
|
||||
| 9 | DWS_BUILD_ORDER_SUMMARY |
|
||||
| 10 | DWS_MEMBER_CONSUMPTION |
|
||||
|
||||
## 失败任务(21 个)
|
||||
|
||||
| # | 任务 | 错误类型 |
|
||||
|---|------|----------|
|
||||
| 1 | DWS_MEMBER_VISIT | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 2 | ODS_GOODS_CATEGORY | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 3 | ODS_STORE_GOODS | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 4 | ODS_STORE_GOODS_SALES | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 5 | ODS_TENANT_GOODS | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 6 | ODS_PLATFORM_COUPON | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 7 | ODS_GROUP_PACKAGE | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 8 | ODS_GROUP_BUY_REDEMPTION | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 9 | ODS_INVENTORY_STOCK | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 10 | ODS_INVENTORY_CHANGE | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 11 | DWS_GOODS_STOCK_DAILY | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 12 | DWS_GOODS_STOCK_WEEKLY | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 13 | DWS_GOODS_STOCK_MONTHLY | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 14 | DWS_FINANCE_DAILY | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 15 | DWS_FINANCE_RECHARGE | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 16 | DWS_FINANCE_INCOME_STRUCTURE | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 17 | DWS_FINANCE_DISCOUNT_DETAIL | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 18 | DWS_WINBACK_INDEX | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 19 | DWS_NEWCONV_INDEX | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 20 | DWS_RELATION_INDEX | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
| 21 | DWD_LOAD_FROM_ODS | 错误: 当前事务被终止, 事务块结束之前的查询被忽略 |
|
||||
|
||||
## 根因分析
|
||||
|
||||
BUG 6: `DWS_MEMBER_VISIT` → `_extract_table_info()` 方法中 SQL 引用了 `dwd.dim_table.site_table_id`,
|
||||
但该表的主键字段实际为 `table_id`(参考 `db/etl_feiqiu/schemas/dwd.sql`)。
|
||||
|
||||
错误发生后,psycopg2 连接进入 InFailedSqlTransaction 状态,导致后续所有任务级联失败。
|
||||
|
||||
## 修复措施
|
||||
|
||||
1. `member_visit_task.py` → `_extract_table_info()`:
|
||||
- `site_table_id AS table_id` → `table_id AS table_id`
|
||||
- `site_table_name AS table_name` → `table_name AS table_name`
|
||||
|
||||
2. `finance_income_task.py` → `_extract_income_by_area()`:
|
||||
- JOIN 条件 `dt.site_table_id = tfl.site_table_id` → `dt.table_id = tfl.site_table_id`
|
||||
- JOIN 条件 `dt.site_table_id = asl.site_table_id` → `dt.table_id = asl.site_table_id`
|
||||
|
||||
## BUG 5 验证
|
||||
|
||||
BUG 5(birthday 字段)的修复已部署,但被 BUG 6 遮蔽,无法在本次执行中验证。
|
||||
需要第六次执行来同时验证 BUG 5 + BUG 6 + BUG 7。
|
||||
Reference in New Issue
Block a user