[BUG] pg14 getCreateTableSql Error

Ouverte
#6 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
42/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
java, postgresql
Domaine
databases

Piste de recherche

Commencez par PostgresqlClient.getCreateTableSql à la ligne 330 et PostgreSQLTest.getCreateTable à la ligne 355, puis reproduisez l’échec avec PostgreSQL 14.2. Inspectez le SQL qui fait référence à la colonne consrc manquante et vérifiez que getCreateTableSql s’exécute correctement avec le catalogue PostgreSQL 14 ; ajoutez ou mettez à jour le test pertinent si le test existant ne couvre pas cette version.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

数据库版本:14.2 (Debian 14.2-1.pgdg110+1)

postgreSQL 14版本时,postgresql 插件的getCreateTableSql 方法会报错。


com.dtstack.dtcenter.loader.exception.DtLoaderException: SQL execute exception:ERROR: column "consrc" does not exist
  建议:Perhaps you meant to reference the column "c.conkey" or the column "c.conbin".
  位置:143

	at com.dtstack.dtcenter.loader.ClassLoaderCallBackMethod.callbackAndReset(ClassLoaderCallBackMethod.java:36)
	at com.dtstack.dtcenter.loader.client.sql.DataSourceClientProxy.getCreateTableSql(DataSourceClientProxy.java:155)
	at com.dtstack.dtcenter.loader.client.sql.PostgreSQLTest.getCreateTable(PostgreSQLTest.java:355)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:160)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
	at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
	at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:221)
	at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)
Caused by: com.dtstack.dtcenter.loader.exception.DtLoaderException: SQL execute exception:ERROR: column "consrc" does not exist
  建议:Perhaps you meant to reference the column "c.conkey" or the column "c.conbin".
  位置:143
	at com.dtstack.dtcenter.common.loader.common.utils.DBUtil.executeQuery(DBUtil.java:123)
	at com.dtstack.dtcenter.common.loader.rdbms.AbsRdbmsClient.executeQuery(AbsRdbmsClient.java:153)
	at com.dtstack.dtcenter.common.loader.rdbms.AbsRdbmsClient.executeQuery(AbsRdbmsClient.java:163)
	at com.dtstack.dtcenter.common.loader.postgresql.PostgresqlClient.getCreateTableSql(PostgresqlClient.java:330)
	at com.dtstack.dtcenter.loader.client.sql.DataSourceClientProxy.lambda$getCreateTableSql$17(DataSourceClientProxy.java:155)
	at com.dtstack.dtcenter.loader.ClassLoaderCallBackMethod.callbackAndReset(ClassLoaderCallBackMethod.java:34)
	... 25 more
Caused by: org.postgresql.util.PSQLException: ERROR: column "consrc" does not exist
  建议:Perhaps you meant to reference the column "c.conkey" or the column "c.conbin".
  位置:143
	at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2433)
	at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2178)
	at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:306)
	at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:441)
	at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:365)
	at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:307)
	at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:293)
	at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:270)
	at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:266)
	at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:95)
	at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java)
	at com.dtstack.dtcenter.common.loader.common.utils.DBUtil.executeQuery(DBUtil.java:98)
	... 30 more
Langage dominant
Java
Étoiles
69
Forks
47
Métriques de merge des PR
Aucune PR mergée en 30 j

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de DTStack/DatasourceX

Toutes les issues de DTStack/DatasourceX

Issues similaires

Plus d'issues Java

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.