解决异常
wt.fc.ObjectNoLongerExistsException:
Cannot restore “wt.org.WTUser.674994” because it no longer exists
方法是使用下面的script脚本
REMOTEOBJECTINFO
select ca.IDA3A3, ca.ida2a2, ca.* from REMOTEOBJECTINFO ca where ca.IDA3A3 not in (select ida2a2 from wtuser) order by ca.IDA3A3 desc;
delete from REMOTEOBJECTINFO where ida2a2=674996
OWNINGREPOSITORYLOCALOBJECT
select ca.IDA3B5, ca.ida2a2, ca.* from OWNINGREPOSITORYLOCALOBJECT ca where ca.IDA3B5 not in (select ida2a2 from wtuser) order by ca.IDA3B5 desc;
delete from OWNINGREPOSITORYLOCALOBJECT where ida2a2=674997
CABINET
select ca.IDA3A2OWNERSHIP, ca.ida2a2, ca.* from CABINET ca where ca.ida3a2ownership not in (select ida2a2 from wtuser) order by ca.ida3a2ownership desc;
delete from CABINET where ida2a2=674998
SUBFOLDER
select ca.IDA3A2OWNERSHIP, ca.ida2a2, ca.* from SUBFOLDER ca where ca.IDA3A2OWNERSHIP not in (select ida2a2 from wtuser) order by ca.IDA3A2OWNERSHIP desc;
delete from SUBFOLDER where ida2a2=674999
WTACLENTRY
select ca.IDA3B3, ca.ida2a2, ca.* from WTACLENTRY ca where ca.IDA3B3 not in (select ida2a2 from wtuser) order by ca.IDA3B3 desc;
delete from WTACLENTRY where ida3b3=674994
从数字规律可以看出,系统中创建与WTUser相关信息的顺序是:
REMOTEOBJECTINFO(IDA3A3)
-> OWNINGREPOSITORYLOCALOBJECT(IDA3B5)
-> CABINET(IDA3A2OWNERSHIP)
-> SUBFOLDER(IDA3A2OWNERSHIP)
-> WTACLENTRY(IDA3B3)
本文详细介绍了如何使用SQL脚本解决异常情况下的WTUser相关对象删除问题,包括远程对象信息、拥有者本地对象、柜子、子文件夹和WTAC列条目等顺序操作。
1843

被折叠的 条评论
为什么被折叠?



