Audit cleanup job fails with NumberFormatException

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

プラットフォームについて: Server と Data Center のみ - この記事は、サーバーおよびデータセンター プラットフォームのアトラシアン製品にのみ適用されます。

問題

Every hour, Bitbucket Server runs a job against the database it is connected to in order to cleanup the audit logging.

This job fails and the following appears in atlassian-bitbucket.log:

 

2016-08-29 11:17:30,148 ERROR [Caesium-1-1] c.a.b.i.audit.AuditCleanupJobRunner Audit cleanup failed
java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) ~[na:1.8.0_102]
at java.lang.Long.parseLong(Long.java:601) ~[na:1.8.0_102]
at java.lang.Long.parseLong(Long.java:631) ~[na:1.8.0_102]
at com.atlassian.bitbucket.internal.audit.AuditCleanupJobRunner.runJob(AuditCleanupJobRunner.java:54) ~[bitbucket-audit-4.8.3.jar:na]
at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153) [atlassian-scheduler-core-1.7.0.jar:na]
at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118) [atlassian-scheduler-core-1.7.0.jar:na]
at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97) [atlassian-scheduler-core-1.7.0.jar:na]
at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.launchJob(CaesiumSchedulerService.java:401) [atlassian-scheduler-caesium-1.3.0.jar:na]
at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeClusteredJob(CaesiumSchedulerService.java:396) [atlassian-scheduler-caesium-1.3.0.jar:na]
at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeQueuedJob(CaesiumSchedulerService.java:349) [atlassian-scheduler-caesium-1.3.0.jar:na]
at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService$1.consume(CaesiumSchedulerService.java:255) [atlassian-scheduler-caesium-1.3.0.jar:na]
at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService$1.consume(CaesiumSchedulerService.java:252) [atlassian-scheduler-caesium-1.3.0.jar:na]
at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeJob(SchedulerQueueWorker.java:65) [atlassian-scheduler-caesium-1.3.0.jar:na]
at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeNextJob(SchedulerQueueWorker.java:59) [atlassian-scheduler-caesium-1.3.0.jar:na]
at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.run(SchedulerQueueWorker.java:34) [atlassian-scheduler-caesium-1.3.0.jar:na]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_102]

診断

Connect to the database being used by Bitbucket Server and run the following query:

select key_value from plugin_setting where namespace = 'bitbucket.global.settings' and key_name = 'audit.cleanup.last.run';

The result should be one row with no value in it.

原因

The value of plugin_setting.key_value is empty, and an empty String fails to be converted to Long, causing the NumberFormatException. The reason why the value of plugin_setting.key_value is empty is not yet known.

ソリューション

Run the following query in order to remove that entry from the database:

delete from plugin_setting where namespace = 'bitbucket.global.settings' and key_name = 'audit.cleanup.last.run';

This should fix the cleanup job, allowing it to run successfully

最終更新日 2018 年 11 月 2 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.