【发布时间】:2014-04-28 13:22:36
【问题描述】:
我最近使用自动化脚本从我的 Liferay 数据库中删除了 120,000 个用户。然而,在此之前,我使用 DELETE FROM User_ WHERE userId=1234567 从数据库中手动删除了 2 个用户 - 只是为了看看用户可能拥有的任何关联会发生什么。
用户已被删除,但包含该 userId (1234567) 的所有其他表行仍然存在。很好。
所以现在我想重新索引所有搜索索引以获取当前用户列表,但 LR 抛出异常:
08:07:41,922 ERROR [http-bio-20110-exec-290][LuceneIndexer:136] Error encountere
d while reindexing
com.liferay.portal.kernel.search.SearchException: com.liferay.portal.NoSuchUserE
xception: No User exists with the key {contactId=1234568}
at com.liferay.portal.kernel.search.BaseIndexer.getDocument(BaseIndexer.j
ava:179)
at com.liferay.portlet.usersadmin.util.ContactIndexer$1.performAction(Con
tactIndexer.java:203)
at com.liferay.portal.kernel.dao.orm.BaseActionableDynamicQuery.performActions
InSingleInterval(BaseActionableDynamicQuery.java:309)
at com.liferay.portal.kernel.dao.orm.BaseActionableDynamicQuery.performActi
这个contactId 似乎对于任何创建的用户来说都比userId高一个数字(我可能错了)
所以我的问题是,我该如何解决这个问题,以便我可以执行重新索引?
Liferay EE 6.2 雄猫 7.0.33 SQL 服务器
【问题讨论】:
标签: liferay