共用方式為


SYNCED_TABLE_USER_ERROR錯誤狀態

SQLSTATE:42000

同步資料表流程使用者錯誤。

CHANGED_PRIMARY_KEY

同步資料表 <destTableUcName> 中指定的主要鍵欄位已被更改。

指定的主要鍵欄位:(<primaryKeyColumns>)。 目前主要鍵欄位:(<existingPrimaryKeyColumns>)。

在同步資料表建立後,不支援更改主鍵欄位。

要解決這個問題,可以將同步的資料表改回原本的主鍵欄位,或建立新的同步資料表並刪除現有的。

字元不在字集內

實例: <instance>。 在來源 Delta 資料表中找到無效的位元組序列。

細節: <detail>

這通常表示來源 Delta 資料表包含無效字元。

與目標資料庫的編碼相容。 一種因應措施是將

原始資料表使用 BINARY TYPE,接著建立新的同步資料表。

不支援變更欄位類型

實例: <instance>。 目前不支援變更數據行類型。

來源差異數據表: <srcTableName>。 目的地同步數據表: <destTableName>

列:<columnName>。 現有類型: <existingType>。 新類型: <newType>

若要解決此問題,請考慮下列其中一個選項:

  1. 執行現有同步數據表的完整重新整理。

  2. 建立新的同步資料表(自動支援新的類型)

連線錯誤

實例: <instance>。 連線錯誤。 細節: <detail>

若要解決此問題,請確保資料庫執行個體正在執行,而不是暫停或停止。

重新啟動管線以重試。

資料庫不存在

目的資料庫 <databaseName> 在 lakebase 實例 <instance>中不存在。 請確認目的地資料庫是否存在。

DELTA_TRUNCATED_TRANSACTION_LOG

細節: <detail>

這表示 delta 資料表的交易日誌因手動刪除或日誌保留政策而被截斷。

要解決這個問題,請對同步資料表進行完整刷新。

依賴物件仍存在

實例: <instance>。 無法刪除欄位,因為已有

PostgreSQL 物件仍然指向欄位。 細節: <detail>

若要解決此問題,請考慮下列其中一個選項:

  1. 將缺失的欄位以與先前相同的資料型態重新加入來源資料表。

  2. 把相依物件丟到 PostgreSQL 裡。

外鍵約束違規

實例: <instance>。 與來源資料表同步時的外鍵限制違規:

<srcTableName>。 細節: <detail>

不支援建立參考同步表的外鍵約束。 請

移除外鍵限制,重新嘗試同步。

LOCK_TIMEOUT

實例: <instance>。 資料庫: <databaseName>。 同步表管線無法在設定的逾時 (<timeoutSeconds> 秒) 內取得鎖定。

偵測到 <numBlockingTransactions> 筆交易持有鎖在目標資料表上(最大鎖保留時間:<lockDurationSeconds> 秒)。

使用者交易持有鎖,阻擋同步資料表管線更新目標資料表。

欲了解更多有關錯誤交易的資訊,請查閱 Spark 驅動程式日誌(搜尋「[LOCK TIMEOUT DIAGNOSTICS]')。

為了解決這個問題,請使用 pg_stat_activity 找到 postgres 實例中有長期執行交易的連線,並關閉這些交易(如果連線不再需要,也可以用 pg_terminate_backend 終止連線)。

為了防止此問題再次發生,請考慮以下選項:

  1. 確保您的應用程序要么提交交易,要么回滚交易。

  2. 避免長期交易。 如果應用程式裡的工作不需要在交易中完成,請將auto_commit設為開啟。

  3. 在資料庫中設置參數 idle_in_transaction_session_timeout 以自動終止那些閒置的交易。

範例: ALTER DATABASE <databaseName> SET idle_in_transaction_session_timeout = 「5分鐘」;

MIS_CONFIGURED_PRIMARY_KEY (主鍵配置錯誤)

來源 Delta 表格所提供的主鍵: <srcTableName> 在原始碼表格中無法取得。

主鍵: <primaryKeys>。 可用欄位: <availableColumns>。 缺少主鍵: <missingPkColumns>

若要解決此問題,請考慮下列其中一個選項:

  1. 將缺失的欄位加入來源資料表。

  2. 建立一個新的同步表格,並設定正確的主鍵設定。

PERMISSION_DENIED

細節: <detail>

請確認您是否擁有足夠的權限。

PRIMARY_KEY_CONSTRAINT_VIOLATION

實例: <instance>。 根據主鍵偵測到重複的數據列。 細節: <detail>

這表示主鍵數據行的設定錯誤。

請確認您使用的是正確的主鍵集合

來自來源 Delta 表格: <srcTableName>

若要解決此問題,請建立一個新的同步表格並使用正確的

主鍵組態。

REFRESH_WITH_FOREIGN_KEY(重新整理具外鍵)

實例: <instance>。 無法重新整理同步的資料表<destTableName> 因為該表格

<childTableName> 有一個外鍵約束,指向同步表。

當有外鍵限制時,不支援重新整理同步表

引用它。 請移除外鍵限制並重新嘗試刷新。

SCHEMA_不存在

細節: <detail>

請確認該結構是否存在於 Unity 目錄中。

原始資料讀取錯誤

無法讀取來源表 <tableName>。 請確認是否能透過 SELECT 查詢成功讀取來源資料表。

細節: <detail>

SPARK_JOB_CANCELLED

Spark 作業已取消。

細節: <detail>

表格不存在

細節: <detail>

請確認同步的資料表是否存在於 Unity 目錄中。

TARGET_DATABASE_FULL

目標資料庫 <databaseName> 空間已滿。 無法繼續攝取。

連線過多

資料庫實例的連線過多: <instance>

細節: <detail>

每次資料表同步最多可使用16個連接至資料庫實例,這些連線計入實例的連線上限。

要解決這個問題,請嘗試以下選項:

  1. 減少同時寫入同一資料庫實例的管線數量。

例如,錯開管道排程。

  1. 減少來自其他工作負載連接同一資料庫實例的同時連線數量。

UNTRANSLATABLE_CHARACTER

實例: <instance>。 在源 Delta 表中發現無法翻譯的字元。

細節: <detail>

這通常表示來源 Delta 資料表包含無效字元。

與目標資料庫的編碼相容。 一種因應措施是將

原始資料表使用 BINARY TYPE,接著建立新的同步資料表。