エラー: this.external_id という列が存在しない
プラットフォームについて: Data Center - この記事は、Data Center プラットフォームのアトラシアン製品に適用されます。
このナレッジベース記事は製品の Data Center バージョン用に作成されています。Data Center 固有ではない機能の Data Center ナレッジベースは、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。
*Fisheye および Crucible は除く
要約
You are accessing Confluence via a proxy and the following appears in the atlassian-confluence.log
:
org.springframework.jdbc.BadSqlGrammarException: Hibernate operation: Unable to perform find; bad SQL grammar []; nested exception is org.postgresql.util.PSQLException: ERROR: column this.external_id does not exist
Position: 484
org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:97)
org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)
org.springframework.orm.hibernate.HibernateAccessor.convertJdbcAccessException(HibernateAccessor.java:364)
org.springframework.orm.hibernate.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:351)
org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:375)
org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:337)
com.atlassian.crowd.embedded.hibernate2.HibernateUserDao.internalFindUser(HibernateUserDao.java:472)
com.atlassian.crowd.embedded.hibernate2.HibernateUserDao.internalFindByName(HibernateUserDao.java:449)
com.atlassian.crowd.embedded.hibernate2.HibernateUserDao.findByName(HibernateUserDao.java:429)
com.atlassian.confluence.user.crowd.CachedCrowdUserDao$1.apply(CachedCrowdUserDao.java:76)
com.atlassian.confluence.user.crowd.CachedCrowdUserDao$1.apply(CachedCrowdUserDao.java:71)
com.atlassian.confluence.cache.option.OptionalReadThroughCache.get(OptionalReadThroughCache.java:33)
com.atlassian.confluence.user.crowd.CachedCrowdUserDao.findUser(CachedCrowdUserDao.java:136)
com.atlassian.confluence.user.crowd.CachedCrowdUserDao.findByName(CachedCrowdUserDao.java:158)
sun.reflect.GeneratedMethodAccessor99.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
原因
This error is actually caused by an expired license being applied to Confluence. Usually you would see an error message similar to below in your browser
Cannot proceed with upgrade. Your current license does not entitle you to upgrade to this version of Confluence because it is now outside of its support period.
If you wish to renew it, please contact sales@atlassian.com. If you have a new license, please enter it on this $CONTEXT/fixonly/fixlicense.action" and restart.
But due to accessing Confluence indirectly, you receive this error message instead.
ソリューション
Access Confluence directly on the port that it is running on. You'll most likely need to use a browser on the server itself. Check to make sure that it is indeed an expired license that is causing the problem.
- Rollback Confluence to its pre-upgrade state, apply a valid license, and repeat the upgrade.