Je travaille sur un serveur CentOS version 6.8 (finale) sans accès à Sudo. J'ai compilé PostgreSQL v9.6 beta 2.
Lorsque je charge des données avec ant, la colonne am.amcanorder n'existe pas, erreur que je ne sais pas comment corriger.
Je suis un tutoriel pour configurer le système d'entreposage de données Intermine et je suis sur cette étape .
ant -Dsource=uniprot-malaria -v
Cela prendra quelques minutes, la commande exécute les étapes suivantes:
La partie en gras est ce qui (à mon avis) cause l'erreur. L'erreur pertinente verbeuse est:
org.postgresql.util.PSQLException: ERROR: column am.amcanorder does not exist
Position: 407
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.Java:2161)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.Java:1890)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.Java:255)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.Java:559)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.Java:403)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.Java:283)
at org.postgresql.jdbc2.AbstractJdbc2DatabaseMetaData.getIndexInfo(AbstractJdbc2DatabaseMetaData.Java:4234)
at org.intermine.task.CreateIndexesTask.execute(CreateIndexesTask.Java:212)
at org.Apache.tools.ant.UnknownElement.execute(UnknownElement.Java:288)
Le problème a été résolu en compilant la version 9.5.3, la dernière version stable à ce jour. Auparavant, j'utilisais la v9.6beta2 ... qui a un erreur signalée lorsque je travaille avec JDBC & v9.6beta2.
Player87 a raison, cela fonctionne simplement en remplaçant la nouvelle version 9.6 * par 9.5. * Du PostgresSQL serveur.
Mais, il existe une autre solution. Pour un projet Java, j'ai aussi essayé de partir PostgresSQL serveur le 9.6. * et mis à jour le pilote PostgresSQL, de la version 9.4-1203 à la dernière version 9.4-1211. Dans un fichier maven pom.xml:
<postgresql.version>9.4.1211</postgresql.version>
Cela a fonctionné pour moi aussi.
Pour moi (connexion à PostgreSQL depuis une application Java/Maven et confrontée à la même erreur), il s'agissait d'un problème de pilote.
La mise à jour du pilote PostgreSQL de 9.4-1201-jdbc41 à 42.1.4 a résolu le problème. Ma dépendance Maven ressemble maintenant à ceci:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.1.4</version>
</dependency>
J'ai rencontré le même problème avec Spring Boot et l'ai résolu en mettant à niveau mon pilote.
Pour Spring Boot 1.4.0, je viens d'ajouter la dépendance suivante
<dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> </dependency>