Просмотр исходного кода

fix(raw/trd): 订单 inc 同步锚点 COALESCE 改 create OR update

后端确认存在 update_time < create_time 的脏单,COALESCE 取更早的 update 会把
这类单甩到日窗外、日常同步漏且不自愈;改 create 或 update 任一命中即捞。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
tianyu.chu 2 недель назад
Родитель
Сommit
58a026a050
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      jobs/raw/trd/raw_trd_card_group_order_info_inc_d.ini

+ 2 - 2
jobs/raw/trd/raw_trd_card_group_order_info_inc_d.ini

@@ -2,7 +2,7 @@
 ; 日期:2026-04-28
 ; 工单:(无)
 ; 目的:PG public.card_group_order_info → Hive raw.raw_trd_card_group_order_info_inc_d
-;       日常增量同步,时间锚点 = update_time
+;       日常增量同步,时间锚点 = create_time OR update_time(双命中,防 update<create 的单被漏)
 ;
 ; 配套 DDL:manual/ddl/raw/trd/raw_trd_card_group_order_info_inc_d_create.sql
 ; 配套 _his_o:manual/backfill/20260425_raw_trd_card_group_order_info_his_o_history.ini
@@ -18,7 +18,7 @@ database = hobby_stocks
 table = public.card_group_order_info
 column = id,group_info_id,merchant_id,user_id,shipping_address_id,purchase_count,order_no,accounts_payable,actual_payment,payment_type,payment_time,coupon,discount,status,remark,create_time,create_by,update_time,update_by,payment_status,payment_status_desc,payment_success_time,del_flg,curier_company,refund_fee,refund_time,anonymous,pick_up_type,ship_time,refund_success_time,refund_recv_accout,refund_account,refund_request_source,card_price,act_price,goods_price_json,payment_sub_type,team_first,refuse_status,prop1,prop2,prop3,point,order_type,trade_amount,refund_type,refund_reason,evaluation,user_refund_time,refund_status,merchant_refund_reason,point_deduct,shipping_cost,merchant_remark,pay_record,order_sub_type,give_user_code,give_order_id,read_flag,give_num,invoice_id,combination_no,open_self,refund_desc,goods_allocate,close_payment_status,close_payment_time,finished_time,expire_time,settlement_amount,platform_coupon,platform_discount,discount_amount,member_discount,shipping_free_id,shipping_free_amount,discount_point,un_shipped_num,pre_un_shipped_num,wait_shipped_num,pre_wait_shipped_num,refuse_time,refuse_notice,pickup_time,waring_type,waring_status,point_type,delivery_end_time,serve_status,self_pickup_time,act_discount
 columnType =
-where = COALESCE(update_time, create_time) >= '${start_date}' AND COALESCE(update_time, create_time) < '${stop_date}'
+where = (create_time >= '${start_date}' AND create_time < '${stop_date}') OR (update_time >= '${start_date}' AND update_time < '${stop_date}')
 querySql =
 splitPk = id
 fetchSize = 1000