2016-07-18 178 views
22

Sto lavorando su server basato su CentOS versione 6.8 (finale) senza accesso sudo. Ho compilato PostgreSQL v9.6 beta 2.Errore PostgreSQL: colonna am.amcanorder inesistente

Quando sto caricando i dati utilizzando formica, ottengo colonna am.amcanorder non esiste l'errore che non so come risolvere.

Sto seguendo un tutorial per configurare il sistema di data warehousing di Intermine e sono su this step.


ant -Dsource=uniprot-malaria -v 

Questo richiederà un paio di minuti per completare, il comando esegue le seguenti operazioni:

  • Controlla che una fonte con nome UniProt-malaria esiste in project.xml
  • Legge i file XML UniProt nella posizione specificata da src.data.dir
  • Chiama il parser incluso nella sorgente uniprot con l'elenco diFile, questo legge l'XML originale e crea elementi che sono rappresentazioni di metadati degli oggetti che verranno caricati nel database di malariamine.
  • Questi articoli sono memorizzati in un database di articoli intermedi. Legge da il database degli articoli, converte gli oggetti in oggetti e li carica nel database di malariamine.

La parte in grassetto è quello che (a mio parere) che causa l'errore. L'errore in questione è verbose:

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) 
+0

@ErwinBrandstetter aggiornato, anche se credo che il problema sia con PostgreSQL se stessa e non il codice sto correndo ... – player87

+1

E 'un messaggio di errore Postgres di sicuro. La colonna 'amcanorder' non si trova nella tabella' am'. Non ho idea del perché, però. –

+0

Sì, non sono riuscito a trovare alcuna informazione reale, almeno non quello che ho capito. Risponderò alla mia domanda se in qualche modo riuscirò a superare questo errore. – player87

risposta

11

Bene il problema è stato risolto compilando v9.5.3, l'ultima versione stabile in questo momento. In precedenza, stavo usando v9.6beta2 ... che ha un reported error quando si lavora con JDBC & v9.6beta2.

36

Player87 è giusto, funziona semplicemente sostituendo la nuova versione 9.6 * con 9.5. * Del PostgresSQLserver di.
Ma c'è un'altra soluzione. Per un progetto Java, ho anche provato a lasciare PostgresSQLserver su 9.6. * E aggiornato il driver PostgresSQL, dalla versione 9.4-1203 al più recente 9.4-1211. In un file pom.xml Maven:

<postgresql.version>9.4.1211</postgresql.version> 

che ha lavorato anche per me.

+0

Grazie tu. Ha funzionato magnificamente Non mi piacciono gli errori non critici riportati nei miei registri. Mi fa sentire a disagio. – Spider

+1

Passare alla versione più recente del driver ha risolto il problema di java. – croraf

+1

L'aggiornamento da 9.4.1208 a 9.4.1211 ha funzionato anche per me. –

4

Ho affrontato lo stesso problema con SpringBoot e hanno risolto questo aggiornando il mio autista

Per la Primavera di avvio 1.4.0 Ho appena aggiunto il seguente Dipendenza

<dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> </dependency>

+1

Questo è vero, ma solo se il progetto è un sottomodulo di avvio a molla, in quanto eredita le dipendenze da Spring Boot. Inoltre, la mancata specifica della versione ha portato all'utilizzo della versione più recente. – russellhoff

1

Per me (che collega a PostgreSQL da un'applicazione Java/Maven e con lo stesso errore) era un problema di driver.

Aggiornamento del driver PostgreSQL da 9.4-1201-jdbc41 a 42.1.4 risolto. mio Maven dipendenza ora assomiglia a questo:

<dependency> 
     <groupId>org.postgresql</groupId> 
     <artifactId>postgresql</artifactId> 
     <version>42.1.4</version> 
    </dependency> 
+0

Sì. Ho affrontato lo stesso problema, sopra la versione 42.1.4 funziona bene –

Problemi correlati