當建立二級索引出現該異常時,請確保資料表存在固定資料生命週期(TTL)時資料表已禁止更新,或者資料表中資料永不到期。
現象
建立二級索引時出現如下異常:
ErrorCode: OTSParameterInvalid, ErrorMessage: Don't support allow update operation on table with index and ttl
原因
資料表存在固定資料生命週期時,未設定資料表為禁止更新狀態(即TableOptions.AllowUpdate = false)。
重要
建立二級索引時,資料表必須滿足如下條件中的任意一個。
資料表的資料生命週期為-1(資料永不到期)。
資料表的資料生命週期不為-1時,資料表為禁止更新狀態。
解決方案
建立二級索引時,請根據實際業務需求選擇合適的處理方式。
如果對資料表的資料生命週期無限制,您可以通過控制台或者SDK將資料表的資料生命週期修改為-1。
通過控制台修改
在資料表的基本詳情頁簽,單擊修改表屬性,將資料表的資料生命週期修改為-1,單擊確定。
通過SDK修改
調用UpdateTable介面修改資料表的資料生命週期(TableOptions.TimeToLive)參數為-1。
如果需要為資料表設定固定的資料生命週期,您可以通過控制台或者SDK將資料表修改為禁止更新狀態。
重要設定資料表為禁止更新狀態後,您不能通過UpdateRow對資料表中的資料進行更新。
通過控制台修改
在資料表的基本詳情頁簽,單擊修改表屬性,將資料表的是否允許更新修改為否並選中風險提示資訊,單擊確定。
通過SDK修改
調用UpdateTable介面修改資料表的允許更新(TableOptions.AllowUpdate)參數為false。