我们最近升级到DSpace 5.1后,从更强大的Dspace管理员继承了系统。
我们最近注意到的一个问题是某些引文似乎没有生成。在任何指向错误的dspace / tomcat / solr日志中都找不到任何东西(我能找到)。
手动运行策展任务(cron每两分钟执行一次)运行预期的持续时间并且不会因失败而中止。
sudo -u tomcat /usr/local/dspace/bin/dspace curate -q continually -r - -v
如果我指定不指定句柄,则从管理界面中,以下操作失败。
如果我指定了一个没有引文的对象的句柄,它就可以了。
以下是失败时所说的内容:
任务:从元数据生成引文任务已完成 成功。状态:失败,结果:策展任务未提供 有关结果的更多信息。
并取得成功:
任务:从元数据生成引文任务已完成 成功。状态:成功,结果:添加引文......
当我成功生成引文时,我会在dspace日志中获得以下日志(已过滤):
2015-04-28 16:47:26,122 INFO org.dspace.content.Item @ ...:session_id=...:ip_addr=...:update_item:item_id=5966
2015-04-28 16:47:26,367 INFO org.dspace.curate.Curator @ Curation task: citation performed on: .../5634 with status: 0. Result: 'Added citation ...
如果我没有句柄运行任务,那么我得到以下内容:
2015-04-28 16:52:19,972 INFO org.dspace.curate.Curator @ Curation task: citation performed on: with status: 1
嗯,我想知道现在我是否必须在末尾指定句柄PREFIX / 0
任务:从元数据生成引文任务已完成 成功。
状态:跳过,结果:项目已经引用,跳过; ITEM_ID = 2479
我现在应该以不同的方式运行策展任务(来自cron)吗?
当提交新对象时,也许管理任务没有正确排队;我在哪里可以检查策展任务队列(甚至在数据库中)?
干杯, 卡梅伦
更新
/usr/local/dspace/ctqueues/continually# ls -l
total 448
-rw-r--r-- 1 tomcat tomcat 0 Apr 17 09:40 lock0
-rw-r--r-- 1 tomcat tomcat 420832 Apr 17 09:37 queue0
-rw-r--r-- 1 tomcat tomcat 15691 Apr 28 10:44 queue1
-rw-r--r-- 1 tomcat tomcat 12986 Apr 14 13:39 queue6
我想尝试保留队列的内容以便它耗尽,所以我只是删除了lock0文件并运行sudo -u tomcat /usr/local/dspace/bin/dspace curate -q continually -r - -v
来尝试排空工作队列,但我似乎得到的只是两个新的锁文件,lock0和lock1。
我原以为dspace命令会完成并且应该删除队列文件,但我认为我的理解必定是错误的。所以我然后删除了文件,然后重新启动tomcat。但我看到服务器现在很忙,似乎正在进行策展任务活动,所以我认为这是一个有希望的迹象。感谢。
答案 0 :(得分:0)
首先,引文生成器不是标准的DSpace任务。
其次,是的,您需要使用[your-prefix] / 0在管理界面中运行系统范围的策展任务;如果没有给出,则DSpace应抛出错误消息,不确定是否存在。
DSpace 5.1中的任何更改都不会影响您通过cron运行策展任务的方式。
策展任务队列基于文件并位于[dspace]/ctqueues/[name-of-queue]/[queue-file]
。从上面的命令看,您感兴趣的任务队列看起来像是“连续”队列。可能是处理旧策略任务的一些打嗝留下了旧的queueN文件,这可能会中断队列的处理/将新任务添加到该队列。您可能希望删除那些旧的queueN文件。
<强>更新强>
您对队列文件行为方式的理解是正确的;如果有两个命令在curation队列中运行,你可能会看到两个锁定文件(例如,第二个命令在第一个仍在运行时启动,如果你经常在相同的队列中工作,可能会发生这种情况,并且由于某种原因会出现堆积队列文件)。我相信当curate命令崩溃时我看到了锁定文件,所以你可能希望将队列目录添加到崩溃后要检查的事物列表中。此外,始终确保ctqueues目录树具有正确的权限(在您的情况下看起来不是问题)。