Can not execute Sonar: Missing column: period in ALERTS

I recently encountered the following error in Sonar 3.5 [ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.0:sonar (default-cli) on project smartfx: Can not execute Sonar: Missing column:period in DB.ALERTS -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.0:sonar (default-cli) on project myproject: Can not execute Sonar at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java: 203) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java: 148) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java: 140) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) A quick check of the database revealed that the ALERTS table does indeed contain a column named ‘period’. [Read More]

SonarException: The project is already been analysing.

I was getting this error when running a Sonar analysis recently.

This was caused by the Jenkins/Sonar process getting killed while the project analysis is underway. Sonar now uses a database semaphore to prevent multiple builds running at the same time, but if the job gets terminated then the semaphores don’t get cleaned up.

To fix the problem: Log into the database and delete any rows in the ‘semaphores’ table.