Hello, all.
I just fixed an issue which had broken our APEL reporting (due, apparently,
to tomcat not picking up a new hostcert when everything else did), to
discover that there is a new issue behind it.
At present, whenever the accounting cron job runs (or when I run it myself),
the process ends in the log with:
Fri Nov 16 14:05:08 UTC 2007: apel-publisher - LCG CE: Stitching together
all accounting records
Fri Nov 16 14:05:09 UTC 2007: apel-publisher - program aborted
org.glite.apel.core.ApelException: java.sql.SQLException: Can't open file:
'EventRecords.MYI' (errno: 144)
at
org.glite.apel.core.db.MySQLImpl.joinAccountingRecords(MySQLImpl.java:1552)
at
org.glite.apel.core.db.MySQLImpl.generateAccountRecords(MySQLImpl.java:728)
at
org.glite.apel.publisher.AccountManager.processRecords(AccountManager.java:299)
at org.glite.apel.publisher.AccountManager.run(AccountManager.java:141)
at
org.glite.apel.publisher.ApelPublisher.runJoinProcessor(ApelPublisher.java:117)
at org.glite.apel.publisher.ApelPublisher.run(ApelPublisher.java:65)
at org.glite.apel.publisher.ApelPublisher.main(ApelPublisher.java:234)
Caused by: java.sql.SQLException: Can't open file: 'EventRecords.MYI'
(errno: 144)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2851)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1531)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1622)
at com.mysql.jdbc.Connection.execSQL(Connection.java:2379)
at com.mysql.jdbc.Connection.execSQL(Connection.java:2306)
at com.mysql.jdbc.Statement.executeQuery(Statement.java:1192)
at
org.glite.apel.core.db.MySQLImpl.joinAccountingRecords(MySQLImpl.java:1549)
Which is odd because:
There is definitely a MySQL server running.
There is definitely an EventRecords.MYI file in
/var/lib/mysql/accounting/EventRecords.MYI
and that file has permissions such that it should be readable by root, or
the mysql user.
The file is also of non-zero size - in fact, it is quite a few Mbs (about
11) in size.
So, this should be working, yes?
Does anyone have any suggestions?
Sam
|