2013-02-07 4 views
3

Il y a une erreur fatale lorsque le sonar de départ:sonar ne peut se connecter postgreSQL lors du démarrage

2013.02.07 09:33:08 INFO o.s.c.p.Database Create JDBC datasource for jdbc:postgresql://10.123.78.58:5432/sonar 
2013.02.07 09:33:08 ERROR o.s.c.p.Database Can not connect to database. Please check connectivity and settings (see the properties prefixed by 'sonar.jdbc.'). 
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (ERROR: parameter "standard_conforming_strings" cannot be changed) 
    at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) ~[commons-dbcp-1.3.jar:1.3] 
    at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388) ~[commons-dbcp-1.3.jar:1.3] 
    at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) ~[commons-dbcp-1.3.jar:1.3] 
    at org.sonar.core.persistence.DefaultDatabase.checkConnection(DefaultDatabase.java:140) [sonar-core-3.4.1.jar:na] 
    at org.sonar.core.persistence.DefaultDatabase.start(DefaultDatabase.java:69) [sonar-core-3.4.1.jar:na] 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.6.0_37] 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ~[na:1.6.0_37] 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[na:1.6.0_37] 
    at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_37] 
    at org.picocontainer.lifecycle.ReflectionLifecycleStrategy.invokeMethod(ReflectionLifecycleStrategy.java:110) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.lifecycle.ReflectionLifecycleStrategy.start(ReflectionLifecycleStrategy.java:89) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.start(AbstractInjectionFactory.java:84) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.behaviors.AbstractBehavior.start(AbstractBehavior.java:169) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.behaviors.Stored$RealComponentLifecycle.start(Stored.java:132) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.behaviors.Stored.start(Stored.java:110) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.DefaultPicoContainer.potentiallyStartAdapter(DefaultPicoContainer.java:1009) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.DefaultPicoContainer.startAdapters(DefaultPicoContainer.java:1002) [picocontainer-2.14.1.jar:na] 
    at org.picocontainer.DefaultPicoContainer.start(DefaultPicoContainer.java:760) [picocontainer-2.14.1.jar:na] 
    at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:72) [sonar-plugin-api-3.4.1.jar:na] 
    at org.sonar.server.platform.Platform.startDatabaseConnectors(Platform.java:186) [classes/:na] 
    at org.sonar.server.platform.Platform.init(Platform.java:129) [classes/:na] 
    at org.sonar.server.platform.PlatformLifecycleListener.contextInitialized(PlatformLifecycleListener.java:33) [classes/:na] 
    at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548) [jetty-6.1.25.jar:6.1.25] 
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:136) [jetty-6.1.25.jar:6.1.25] 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1272) [jetty-6.1.25.jar:6.1.25] 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) [jetty-6.1.25.jar:6.1.25] 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:489) [jetty-6.1.25.jar:6.1.25] 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) [jetty-util-6.1.25.jar:6.1.25] 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) [jetty-6.1.25.jar:6.1.25] 
    at org.mortbay.jetty.Server.doStart(Server.java:224) [jetty-6.1.25.jar:6.1.25] 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) [jetty-util-6.1.25.jar:6.1.25] 
    at org.sonar.application.JettyEmbedder.start(JettyEmbedder.java:74) [sonar-application-3.4.1.jar:na] 
    at org.sonar.application.StartServer.main(StartServer.java:49) [sonar-application-3.4.1.jar:na] 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.6.0_37] 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ~[na:1.6.0_37] 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[na:1.6.0_37] 
    at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_37] 
    at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240) [wrapper-3.2.3.jar:3.2.3] 
    at java.lang.Thread.run(Thread.java:662) [na:1.6.0_37] 
Caused by: org.postgresql.util.PSQLException: ERROR: parameter "standard_conforming_strings" cannot be changed 
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2101) ~[postgresql-9.1-902.jdbc4.jar:na] 
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1834) ~[postgresql-9.1-902.jdbc4.jar:na] 
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255) ~[postgresql-9.1-902.jdbc4.jar:na] 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:510) ~[postgresql-9.1-902.jdbc4.jar:na] 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:372) ~[postgresql-9.1-902.jdbc4.jar:na] 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:364) ~[postgresql-9.1-902.jdbc4.jar:na] 
    at org.apache.commons.dbcp.PoolableConnectionFactory.initializeConnection(PoolableConnectionFactory.java:612) ~[commons-dbcp-1.3.jar:1.3] 
    at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:586) ~[commons-dbcp-1.3.jar:1.3] 
    at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556) ~[commons-dbcp-1.3.jar:1.3] 
    at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545) ~[commons-dbcp-1.3.jar:1.3] 
... 38 common frames omitted 

envirnment:
sonar: 3.4.1
postgreSQL: 8.1.3
CentOS: 6.3 x86_64

Un fragment de sonar.properties:

sonar.jdbc.username:      sonar 
sonar.jdbc.password:      sonar 
sonar.jdbc.url:       jdbc:postgresql://localhost:5432/sonar 
sonar.jdbc.driverClassName:    org.postgresql.Driver 

Tout Sugge stion?

+0

+1 pour inclure dans votre système d'exploitation des informations sur la version du logiciel. –

Répondre

4

Je suggère de soulever ce problème avec le projet sonar.

La partie relevent du stacktrace est:

Caused by: org.postgresql.util.PSQLException: ERROR: parameter "standard_conforming_strings" cannot be changed 

Les postgres documentation indique que la manipulation des "standard_conforming_strings" changé dans la version 9.1. Donc, je soupçonne que le problème pourrait être votre ancienne version de base de données.

Mise à jour

Le changement introduit par SONAR-3876 pourrait être la cause de votre problème:

Une solution est de forcer les standard_conforming_strings à « sur » des connexions JDBC et d'arrêter deux backslashing en des rails. Il permet de supporter les deux versions 9.0 et 9.1.

+0

Après avoir mis à niveau la version de PostgreSQL, le problème a été résolu. –

Questions connexes