2014-04-28 20 views
1

我正在使用Liferay-Portal-6.0.6,为此我为组织开发了Intranet平台。用户不在搜索结果中显示portlet

用户认证和导入使用LDAP(AD集成)完成。

有一种情况,一个用户在控制面板的用户部分中处于活动状态并且可用,未显示在搜索portlet的搜索结果中。所有的用户都可以搜索,但这一个。

有没有人知道为什么会发生这种情况?如果是的话,请提供帮助。

P.S.- 搜索portlet没有使用Hooks或Exts进行修改。它是Liferay提供的默认开箱即用型portlet。

+0

您是否尝试过做一个完整的重新索引? –

+0

整个重建索引是否会影响整个平台的任何数据或portlet? – aayushdriger

+0

完全reindex为每个门户/插件资产重新创建lucene索引。也为用户。它可以帮助你解决问题。 –

回答

1

您可以使用Luke浏览器https://code.google.com/p/luke/查看由Liferay创建的lucene索引,并发现特定用户的存储方式。 也许这个奇怪的用户被索引的方式,你不认为和理解上下文。

+0

嗨Daniele, 对不起,延迟回复。但我不明白如何使用此工具以及在哪里查找lucene索引。 – aayushdriger

0

经过长期的研究和精细的审视,我找到了一个解决方案。 我的liferay实例连接到处理所有索引的SOLR服务器。我检查了我的SOLR服务器的内存,发现阈值内存已满。 我用下面的命令,并得到以下结果 -

[[email protected] bin]# df -h 
Filesystem   Size Used Avail Use% Mounted on 
/dev/mapper/VolGroup00-lv_root 
        227G 227G 0G 100%/
/dev/sda1    99M 18M 77M 19% /boot 
tmpfs     3.9G  0 3.9G 0% /dev/shm 

我发现这是SOLR生成日志淹没服务器内存。所以,我实现了,以减轻这个问题下面的步骤 -

  1. 停止Liferay的Tomcat服务器
  2. 停止SOLR服务器
  3. 删除SOLR-tomcat的日志文件/ logs文件夹
  4. 清除catalina.out使用cat/dev/null> catalina.out。 PS-不删除catalina.out的
  5. 开始SOLR服务器
  6. 转到SOLR控制台http://yoursolrIP:port/solr/admin/logging,并设置所有次要日志级别信息
  7. 启动的Liferay服务器

我还实现了一个旧的日志删除脚本并将其添加到一个cron作业。现在只有最后10天的日志存储在我的例子中,并且根据cron作业自动删除旧的日志。

0

你自己的答案只是一个临时解决方案。最好的做法是实施logrotate。这是在OS级完成的,所以你的任何系统管理员都应该能够为你做到这一点。如果您必须自己动手,请参阅以下链接,介绍如何在RHEL5系统上启用logrotate。 http://www.sysarchitects.com/logrotate_for_solr

由于logrotate的实施可以在不同的OS'es不同,我不能提供任何进一步的信息;)