Azure Synapse Analytics 已知問題
此頁面列出 Azure Synapse Analytics 的已知問題,以及其解決日期或可能的因應措施。 提交支援 Azure 支援要求之前,請先檢閱這份清單,以查看您遇到的問題是否已知且正在解決。
若要深入了解 Azure Synapse Analytics,請參閱 Azure Synapse Analytics 概觀和 Azure Synapse Analytics 的新功能
現有的已知問題
Azure Synapse Analytics 專用的 SQL 集區現有的已知問題摘要
客戶無法使用計量來監視專用 SQL 集區的使用量
遙測排放邏輯的內部升級,目的在於增強遙測資料的效能和可靠性,這導致發生未預期的問題而影響客戶監視專用 SQL 集區、tempdb
和資料倉儲資料 IO 計量的功能。
因應措施:在識別問題時,小組會採取動作來識別根本原因並在系統中更新組態。 客戶可以暫時並繼續執行個體以修正問題,浙江還原執行個體的正常狀態和遙測資料流程。
當將 parquet 檔案擷取至 AUTO_CREATE_TABLE='ON' 的資料表時,查詢發生失敗
若客戶嘗試將 parquet 檔案擷取至具有 AUTO_CREATE_TABLE='ON'
的雜湊分散式資料表,則可能會收到下列錯誤:
COPY statement using Parquet and auto create table enabled currently cannot load into hash-distributed tables
不支援使用 AUTO_CREATE_TABLE 擷取自動建立的雜湊分散式資料表。 先前使用此不支援案例載入的使用者應使用 CTAS 根據資料建立新的資料表,並用於取代舊資料表。
查詢因發生資料輸出錯誤而失敗
從現有專用 SQL 集區建立的 Synapse 工作區會報告與資料輸出保護相關的查詢失敗,並在於 Synapse Analytics 中關閉資料輸出保護時顯示一般錯誤訊息:
Data exfiltration to '{****}' is blocked. Add destination to allowed list for data exfiltration and try again.
因應措施:如果您遇到相似的錯誤,請洽詢 Microsoft 支援小組以取得協助。
UPDATE STATISTICS 失敗
某些專用 SQL 集區可能在執行 UPDATE STATISTICS
陳述式時發生例外狀況。 此命令會產生訊息「提供的統計資料串流已損回」,而無法更新您的統計資料。
當將新的限制式新增至資料表時,系統會在散發中建立相關統計資料。 如果資料上也建立叢集索引,則必須包含與限制式相同的資料行 (相同順序),否則對這些資料行的 UPDATE STATISTICS
命令可能會失敗。
因應措施:識別資料表上是否有限制式和叢集索引。 如果是,請使用 DROP 以卸除限制式和叢集索引。 之後,重新建立叢集索引和限制式,確保兩者都包含相同順序的相同資料行。如果資料表沒有限制式和限制式或上述步驟導致相同錯誤,請連絡 Microsoft 支援小組以取得協助。
標籤更新似乎失敗
當透過 Azure 入口網站或其他方法變更專用 SQL 集區的標籤時,即使變更成功,仍會顯示錯誤訊息。
因應措施:您可以確認標籤的變更是否成功,並視需要忽略/隱藏錯誤訊息。
Azure Synapse 工作區的現有已知問題摘要
下列為 Synapse 工作區的已知問題。
未列出具備使用者指派受控識別 (UAMI) 的Blob 儲存體連結服務
在設定 Blob 儲存體連結服務以在 Azure Synapse Analytics 中使用「使用者指派的受控識別」驗證之後,[資料中樞] -> [連結] -> [Azure Blob 儲存體] 下可能不會顯示連結服務。
因應措施:工程小組目前已注意到此行為,並正在努力修正。 作為替代方案,請使用「系統指派的受控識別」驗證方法,而不是「使用者指派的受控識別」。
無法刪除 Synapse 工作區和無法刪除虛擬網路
刪除 Synapse 工作區失敗,便出現錯誤訊息:
Failed to delete Synapse workspace '[Workspace Name]'. Unable to delete virtual network. The correlationId is ********-****-****-****-************;
因應措施:嘗試刪除作業可以減輕問題。 工程小組已注意到此行為,並正在努力修正。
使用 REST API PUT 作業或 ARM/Bicep 範本更新網路設定失敗
使用 ARM 範本、Bicep 範本或直接 REST API PUT 作業以變更 Synapse 工作區的公用網路存取設定和/或防火牆規則時,作業可能會失敗。
因應措施:使用 REST API PATCH 作業或 Azure 入口網站 UI 以反向並重視所需的組態變更,可以減輕此問題。 工程小組已注意到此行為,並正在努力修正。
將方括弧 [] 納入標籤值的已知問題
在 Azure Synapse 工作區更新標籤值時,包含方括弧 ([]
) 將會導致更新作業失敗。
因應措施:目前的因應措施目的在於避免在 Azure Synapse 工作區標籤值中使用方括弧 ([]
)。
在 Synapse 工作區中使用 GitHub Actions 中的 Synapse-workspace-deployment v1.8.0 與 ARM 範本時發生部署失敗
在部署到實際執行環境期間發生失敗,這與包含具有雙反斜線的主機名稱的觸發程序相關。
顯示的錯誤訊息為 Action failed - Error: Orchestrate failed - SyntaxError: Unexpected token in JSON at position 2057
。
因應措施:您可以採取下列動作快速緩解:
- 移除逸出字元:先從參數檔案手動移除逸出字元 (
\
),然後再進行部署。 意即,編輯檔案以消除在部署剖析或處理階段期間可能造成的問題字元。 - 將逸出字元取代為正斜線:將逸出字元 (
\
) 取代為正斜線 (/
)。 這在檔案路徑中特別有用,其中許多系統接受正斜線作為有效路徑分隔符號。 此取代可能有助於略過逸出字元的問題,讓部署程序能夠成功。
在套用上述的因應措施並成功部署之後,請手動更新工作區內的必要組態,確保一切都已正確設定。 這可能涉及編輯組態檔、調整設定或執行與所部署特定環境或應用程式相關的其他工作。
沒有專用於 "Microsoft.Synapse/workspaces/trustedServiceBypassEnabled" 設定的 'GET' API 作業
問題摘要:在 Azure Synapse Analytics 中,沒有專用的 'GET' API 作業可擷取資源範圍 "Microsoft.Synapse/workspaces/trustedServiceBypassEnabled" 的 "trustedServiceBypassEnabled" 設定狀態。 即使使用者可以設定此組態,仍無法直接透過特定資源範圍截取其狀態。
影響:此限制會影響 Azure 原則定義,導致使用者無法強制執行 "trustedServiceBypassEnabled" 設定的特定狀態。 客戶無法使用 Azure 原則以拒絕或管理此組態。
因應措施:沒有因應措施可讓 Azure 原則強制執行此屬性所需的組態狀態。 不過,使用者可以使用 'GET' 工作區作業以稽核組態狀態以供報告之用。
'GET' 工作區作業會對應至 'Microsoft.Synapse/workspaces/trustedServiceBypassEnabled' Azure 原則別名。
如果作業是針對 Microsoft.Synapse/workspace 資源的 PUT 要求,則可以使用 Azure 原則別名及「拒絕 Azure 原則效果」管理此屬性,但如果 PUT 要求直接傳送至 Microsoft.Synapse/workspaces/trustedServiceByPassConfiguration 子資源,則僅適用於稽核目的。 父資源有對應子資源組態的屬性 [properties.trustedServiceBypassEnabled],這就是為什麼仍可透過父資源的 Azure 原則別名進行稽核。
由於 Microsoft.Synapse/workspaces/trustedServiceByPassConfiguration 子資源沒有可用的 GET 作業,Azure 原則無法管理這些要求,而且 Azure 原則無法為其產生 Azure 原則別名。
父資源: Microsoft.Synapse/workspaces
子資源: Microsoft.Synapse/workspaces/trustedServiceByPassConfiguration
Azure 入口網站會直接對 PUT API 提取 PUT 要求以取得子資源,因此 Azure 入口網站及父 Microsoft.Synapse/workspaces API 以外的任何其他 API 要求都無法透過拒絕或其他可行的 Azure 原則效果來管理 Azure 原則。
Azure Synapse Analytics 無伺服器 SQL 集區現有的已知問題摘要
從無伺服器 SQL 集區至 Azure Cosmos DB 分析存放區的查詢失敗
從無伺服器 SQL 集區到 Azure Cosmos DB 分析存放區的查詢可能會失敗,並出現下列其中一個錯誤訊息:
Resolving CosmosDB path has failed with error 'This request is not authorized to perform this operation'
Resolving CosmosDB path has failed with error 'Key not found'
下列條件必須成立,才能確認此問題:
- Azure Cosmos DB 分析存放區的連線使用私人端點。
- 重試查詢成功。
因應措施:工程小組已注意到此行為,您可以採取下列動作快速緩解:
- 重試失敗的查詢。 其會自動重新整理過期的權杖。
- 停用私人端點。 套用這項變更之前,請先與您的安全性小組確認其符合公司的安全性原則。
Azure Cosmos DB 分析存放區檢視在資料行中傳播錯誤的屬性
透過 Cosmos DB 分析存放區在 Azure Synapse 無伺服器集區使用檢視時,如果 Cosmos DB 分析存放區中的檔案有所變更,則變更不會正確傳播至客戶在檢視上使用的 SELECT 陳述式。 因此,屬性會錯誤對應至結果中的不同資料行。
因應措施:工程小組已注意到此行為,您可以採取下列動作快速緩解:
- 重新命名資料行以重新建立檢視。
- 盡可能避免使用檢視。
如果使用認證,改變資料庫範圍的認證便會失敗
您有時可能無法執行 ALTER DATABASE SCOPED CREDENTIAL
查詢。 此問題的根本原因是在第一次使用後快取,使其無法進行變更。 傳會的錯誤為:
Failed to modify the identity field of the credential '{credential_name}' because the credential is used by an active database file.
因應措施:工程小組目前已注意到此行為,並正在努力修正。 作為因應措施,您可以使用 DROP 和 CREATE 以卸除和建立認證,這也表示使用認證重新建立外部資料表。 或者,您也可以洽詢 Microsoft 支援小組以取得協助。
無伺服器 SQL 集區的查詢失敗
權杖到期可能會導致在查詢執行期間發生錯誤,儘管使用者具備儲存體的必要權限。 這些錯誤訊息也可能因常見使用者錯誤 (例如角色型存取控制 (RBAC) 角色未指派給儲存體帳戶時) 而發生。
範例錯誤訊息:
WaitIOCompletion call failed. HRESULT = 0x80070005'. File/External table name: {path}
Unable to resolve path '%' Error number 13807, Level 16, State 1, Message "Content of directory on path '%' cannot be listed.
Error 16561: External table '<table_name>' is not accessible because content of directory cannot be listed.
Error 13822: File {path} cannot be opened because it does not exist or it is used by another process.
Error 16536: Cannot bulk load because the file "%ls" could not be opened.
因應措施:
解決方法會根據驗證 (Microsoft Entra (前身為 Azure Active Directory) 或受控服務識別 (MSI))而有所不同:
針對 Microsoft Entra 權杖到期:
針對長時間執行的查詢,請切換至服務主題、受控識別或共用存取簽章 (SAS),而非使用使用者身分識別。 如需詳細資訊,請參閱在 Azure Synapse Analytics 中控制無伺服器 SQL 集區的儲存體帳戶存取。
重新啟動用戶端 (SSMS/ADS) 以取得新的權杖來建立連線。
針對 MSI 權杖到期:
- 先停用,然後再啟用集區以清除權杖快取。 請洽詢 Microsoft 支援小組以取得協助。
由於授權標頭太長,因此發生儲存體存取問題
無伺服器 SQL 集區的範例錯誤訊息:
File {path} cannot be opened because it does not exist or it is used by another process.
Content of directory on path {path} cannot be listed.
WaitIOCompletion call failed. HRESULT = {code}'. File/External table name: {path}
執行查詢時,會顯示這些一般儲存體存取錯誤。 某些工作區中的使用者可能會發生此問題,但在其他工作區中運作正常。 此行為會因權杖大小而預期發生。
在 PowerShell 中執行下列命令以檢查 Microsoft Entra 權杖長度。 非公用雲端的 -ResourceUrl
參數值將有所不同。 如果權杖長度接近 11000 或更長,請參閱風險降低一節。
(Get-AzAccessToken -ResourceUrl https://database.windows.net).Token.Length
因應措施:
建議的因應措施如下:
- 切換至受控識別儲存體授權,如儲存體存取控制中所述。
- 減少安全性群組的數目 (90 個或較少群組可產生長度相容的權杖)。
- 增加超過 200 個安全性群組數目 (由於這會變更建構權杖的方式,因此將包含 MS Graph API URI 而不是完整群組清單)。 在您需要將使用者新增至新建立的群組之後,遵循受控群組以新增虛擬/人工群組即可達成此目的。
査詢檢視會顯示非預期的結果
建立檢視後,當您査詢基礎結構描述已變更的檢視時,可能會遇到非預期的結果。 這表示檢視參考了已修改或不再存在的資料行或物件。 若要克服這一點,您需要手動調整檢視定義,使其與基礎結構描述變更保持一致。
因應措施:手動調整檢視定義。
最近關閉的已知問題
Synapse 元件 | 問題 | 狀態 | 解決日期 |
---|---|---|---|
Azure Synapse 無伺服器 SQL 集區 | 使用 Microsoft Entra 驗證的查詢會在 1 小時候失敗 | 已解決 | 2023 年 8 月 |
Azure Synapse 無伺服器 SQL 集區 | 使用 OPENROWSET 讀取 Cosmos DB 時發生查詢失敗 | 已解決 | 2023 年 3 月 |
Azure Synapse:Apache Spark 集區 | 在管線中使用筆記本時,無法使用適用於 Apache Spark 的 Azure Synapse 專用 SQL 集區連接器從 Synapse Spark 寫入至 SQL 專用及區 | 已解決 | 2023 年 6 月 |
Azure Synapse:Apache Spark 集區 | 由於儲存體帳戶節流,因此某些 spark 作業或工作過早失敗,錯誤碼為 503 | 已解決 | 2023 年 11 月 |
Azure Synapse:Apache Spark 集區 | 在 Spark 3.4 執行階段中使用 Synapse 專用 SQL 集區連接器査詢失敗,出現 LIKE 子句 | 已解決 | 2024 年 10 月 |
Azure Synapse Analytics 無伺服器 SQL 集區最近結案的已知問題摘要
使用 Microsoft Entra 驗證的查詢會在 1 小時候失敗
若使用 Microsoft Entra 驗證的 SQL 連線作用中超過 1 小時,則會開始失敗。 這包括使用 Microsoft Entra 傳遞驗證及與 Microsoft Entra ID 互動的陳述式 (例如 CREATE EXTERNAL PROVIDER) 來查詢儲存體。 這會影響每個讓連線保持作用中的工具,例如 SSMS 和 ADS 中的查詢編輯器。 開啟新連線以執行查詢的工具則不受影響,例如 Synapse Studio。
狀態:已解決
使用 OPENROWSET 讀取 Azure Cosmos DB 時發生查詢失敗
使用 OPENROWSET 從無伺服器 SQL 集區到 Cosmos DB Analytical Store 的查詢會失敗,並顯示下列錯誤訊息:
Resolving CosmosDB path has failed with error 'bad allocation'.
狀態:已解決
Azure Synapse Analytics Apache Spark 集區最近結案的已知問題摘要
在管線中使用筆記本時,無法使用適用於 Apache Spark 的 Azure Synapse 專用 SQL 集區連接器從 Synapse Spark 寫入至 SQL 專用及區
在使用適用於 Apache Spark 的 Azure Synapse 專用 SQL 集區連接器以在管線中使用筆記本來寫入 Azure Synapse 專用集區時,我們會看見錯誤訊息:
com.microsoft.spark.sqlanalytics.SQLAnalyticsConnectorException: COPY statement input file schema discovery failed: Cannot bulk load. The file does not exist or you don't have file access rights.
狀態:已解決
由於儲存體帳戶節流,因此某些 spark 作業或工作過早失敗,錯誤碼為 503
在 2023 年 10 月 3 日至 2023 年 11 月 16 日之間,少數 Azure Synapse Analytics Apache Spark 集區可能會因超過儲存體 API 限制閾值而發生 spark 作業/工作失敗。
狀態:已解決
在 Spark 3.4 執行階段中使用 Synapse 專用 SQL 集區連接器査詢失敗,出現 LIKE 子句
開放原始碼 Apache Spark 3.4 引入了一個問題,其逸出特殊字元,但 Synapse SQL 不支援逸出關鍵字。 當客戶使用適用於 Apache Spark 的 Azure Synapse 專用 SQL 集區連接器時,它可能會為 Synapse SQL 產生無效的 SQL 査詢,Synapse Spark 筆記本或批次工作將擲回類似於以下內容的錯誤:
com.microsoft.spark.sqlanalytics.SQLAnalyticsConnectorException: com.microsoft.sqlserver.jdbc.SQLServerException: Parse error at line: 1, column: XXX: Incorrect syntax near ''%test%''
狀態:已解決