2016-07-18 53 views
22

私はCentOS 6.8(最終)ベースのサーバーにsudoアクセスなしで作業しています。私はPostgreSQL v9.6ベータ2をコンパイルしました。PostgreSQLエラー:列am.amcanorderが存在しません

私は、antを使用してデータを読み込んでいますが、am.amcanorderの列は存在しません。私は修正方法がわかりません。

私はIntermineデータウェアハウジングシステムをセットアップするためのチュートリアルに続き、私はthis stepです。名前UNIPROT-マラリアとソースがproject.xmlの に存在していることを

  • チェック:


    ant -Dsource=uniprot-malaria -v 
    

    これが完了するまでに数分かかりますが、コマンドは 次の手順を実行します

  • src.data.dirで指定された場所にあるUniProt XMLファイルを読み込みます。
  • ユニロットソースに含まれるパーサーをのリストで呼び出しますファイルでは、元のXMLを読み取り、 マラリアミンデータベースにロードされるオブジェクトの メタデータ表現であるアイテムを作成します。
  • これらのアイテムは、中間アイテムデータベースに格納されます。 アイテムデータベースからがアイテムをオブジェクトに変換し、 マラリアミンデータベースにロードします。

太字の部分は、エラーの原因となった(私の意見では)何です。関連するエラー詳細は次のとおりです。

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 – player87

+1

を: 私のMavenの依存関係は次のようになります。列 'amcanorder'はテーブル' am'に見つかりません。私はなぜ、洞察力がありません。 –

+0

ええ、少なくとも私が理解しているものではなく、本当の情報を見つけることができませんでした。私は何とかこのエラーを過ぎれば私自身の質問に答えます。 – player87

答えて

11

この問題は、現時点で最新の安定版であるv9.5.3をコンパイルすることで修正されました。以前は、v9.6beta2 ...を使用していましたが、reported errorがあり、JDBCの場合は& v9.6beta2です。

36

Player87は、それが9.5と新しいバージョン9.6 *に置き換えることによってだけで動作、右のである。* のPostgresSQLサーバー
しかし、別の解決策があります。 Javaプロジェクトの場合、私はまた、9.6。*上にPostgresSQLサーバを残しておき、バージョン9.4-1203から最新9.4-1211にPostgreSQLドライバを更新しました。 Mavenののpom.xmlファイルで :あまりにも私のために働いた

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

+0

君は。美しく働いた。私はログに記録された重要ではないエラーが気に入らない。私は不安に思う。 – Spider

+1

最新のドライババージョンに移行すると、Javaの問題が解決しました。 – croraf

+1

9.4.1208から9.4.1211へのアップグレードも私のために働いた。 –

4

私はただのPostgreSQLに接続し、次の依存関係私にとって

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

+1

これは当てはまりますが、プロジェクトがSpringブートのサブモジュールである場合にのみ、Springブートの依存関係が継承されるためです。また、バージョンを指定しないと、最新バージョンの使用につながります。 – russellhoff

1

を(追加SpringBootと同じ問題に直面し、春ブーツ1.4.0のために私のドライバ

をアップグレードすることによって、これを解決していますJava/Mavenアプリケーションから同じエラーに直面している)、それはドライバの問題でした。

PostgreSQLドライバを9.4-1201-jdbc41から42.1.4にアップデートすると解決されました。私は、問題は、PostgreSQL自体ではなく、私が実行しているコードであると思いますが、それは確かにPostgresのエラーメッセージだ...、

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

はい。私は同じ問題に直面しました。バージョン42.1.4より上で問題なく動作します –

関連する問題