使用OpenDJ3.0,可以保存约300万个条目。我实际保存的条目是具有ttl(也称为到期时间)的令牌。
我正在做的是尝试安排一个cron作业来定期搜索那些过期的令牌,并删除它们。
我正在使用OpenDJ sdk SimplePagedResultsControl执行分页搜索,pageSize = 1000,timelimit = 60秒,搜索过滤器是(token-ttl< = 20170724234636.576Z)
我正在使用的搜索用户是默认的“cn =目录管理员”,默认资源限制设置。顺便说一句,我设置的token-ttl索引的入口限制是20000
但是如果两个令牌匹配过滤器,则搜索将永远返回。
我尝试了ldapsearch实用程序,结果相同。
有什么建议吗?
由于
答案 0 :(得分:0)
看起来搜索未编入索引,并尝试扫描整个数据库以搜索匹配的条目。通常,您的搜索应达到某个限制并强行停止(如光标读取限制:数据库中已读取100000条记录)。
您可以尝试在token-ttl属性上添加排序索引吗? 命中此属性的搜索过滤器会更快,但更新此属性的任何操作都会慢一些。这是与指数的权衡。