爲了幫助開發人員更迅速地識別錯誤類型、定位和處理問題,我們整理了DolphinDBServer中的異常以及關鍵錯誤信息,總結出了一份DolphinDB數據庫錯誤代碼列表。當發生報錯時,參考錯誤代碼列表,就可以瞭解當前問題產生的原因。

錯誤代碼一覽

目前,我們已爲大家整理了上百個錯誤代碼以及對應的錯誤原因。錯誤代碼會隨着每一次版本發佈而更新,收藏官網文檔,方便查看更新內容。

S00001:發佈、訂閱或取消訂閱流數據表前,未進行相關配置

S00002:當前分區分佈式鎖已被佔用

S00003:一個表的一個SYMBOL字段的不同取值超過了2^21(2,097,152)個

S00004:Server創建套接字失敗

……

S01001:分區方式爲VALUE的分區列數據中含有空值

S01002:使用addRangePartitions添加新分區時,newRanges字段的範圍可能與數據庫中已有的分區範圍重疊

S01003:當前分區爲構建狀態,不可刪除

S01004:新增chunk時,選擇有同樣分區的其他chunk所在的節點數少於副本數

……

S02000:unpivot函數的valueColNames參數中各列的數據類型未保持一致

S02001:SQL語句的select子句(以及groupby子句,如果有)存在列名重複的列

S02002:saveText函數的第一個參數是SQL元代碼,執行時對應的SQL語句無法拆分成多個子查詢

S02003:inputTables的參數形式不合規

……

S03000:無法用undef函數取消一個流表變量的定義

S03001:創建流引擎時重名

S03002:使用subscribeTable函數進行訂閱時,訂閱主題topic重複

S03003:嘗試用dropStreamTable函數或者drop語句取消一個流表變量的定義時失敗

……

S04001:設置權限grant的對象如果是庫或者表時不存在

S04002:當使用VIEW_EXEC對某個用戶設置某個函數視圖的執行權限時,該函數視圖不存在

S04003:當對某用戶設置DB_OWNER權限時,對應的權限字符串格式非法

S04004:設置權限時的用戶爲非admin用戶,且設置了不包含某些列表的權限

……

S05000:參與求逆的矩陣是奇異的(或稱爲非可逆的)

S05001:使用下標訪問集合,或者使用for遍歷集合

S05003:DECIMAL內部的整型參與運算時,結果超出可表示範圍

S05004:數據寫入列時,數據類型不兼容

……

S06000:SQLupdate語句不符合語法規範

S06001:當調用包含多個參數的函數時,傳參時如果一個參數指定了keyword,其後的參數未指定keyword

S06002:函數定義中使用了share語句

S06003:在命名函數定義裏再嵌套定義命名函數

……

解讀錯誤代碼

DolphinDB數據庫錯誤代碼由三部分構成:S+<與系統模塊相關的錯誤類別碼>+<類別下編碼>

以S01005爲例:

·S:代表Server

·01:代表錯誤發生在存儲模塊下

·005:代表存儲錯誤類別下屬的005錯誤

目前,DolphinDB數據庫錯誤代碼列表涵蓋了如下七種類別:

除了提供列表方便自查,我們還總結了與錯誤代碼同時出現的報錯信息,以及對應的解決方法。由於篇幅有限,請前往DolphinDB官網文檔,查看錯誤代碼的完整手冊~

相關文章