Unable to upgrade plugins due to Length of LOB data in SQL server
プラットフォームについて: Data Center - この記事は、Data Center プラットフォームのアトラシアン製品に適用されます。
このナレッジベース記事は製品の Data Center バージョン用に作成されています。Data Center 固有ではない機能の Data Center ナレッジベースは、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。
*Fisheye および Crucible は除く
症状
Upgrading plugins causes the following error: An unexpected error occurred. Please refer to the logs for more information
atlassian-confluence.log
に次のメッセージが表示される。
Caused by: net.sf.hibernate.exception.GenericJDBCException: could not update: [com.atlassian.confluence.plugin.persistence.PluginData#10190858]
at net.sf.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:80)
at net.sf.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:69)
at net.sf.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)
at net.sf.hibernate.persister.AbstractEntityPersister.convert(AbstractEntityPersister.java:1331)
at net.sf.hibernate.persister.EntityPersister.update(EntityPersister.java:681)
at net.sf.hibernate.persister.EntityPersister.update(EntityPersister.java:621)
at net.sf.hibernate.impl.ScheduledUpdate.execute(ScheduledUpdate.java:52)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2464)
at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2450)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2408)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2276)
at com.atlassian.confluence.plugin.persistence.hibernate.HibernatePluginDataDao.saveOrUpdate(HibernatePluginDataDao.java:60)
... 114 more
Caused by: java.sql.SQLException: Length of LOB data (105082) to be replicated exceeds configured maximum 65536. Use the stored procedure sp_configure to increase the configured maximum value for max text repl size option, which defaults to 65536. A configured value of -1 indicates no limit, other that the limit imposed by the data type.
原因
This is a limitation of MSSQL server Max text exceeding the configured maximum 65536 characters.
ソリューション
Increase the size that can be replicated. This is applicable for transactional replication only.
Recommended the hands on from a DBA to perform the following
T-SQL:
EXEC sp_configure ‘max text repl size’, 2147483647
SSMS (excerpt from BOL):
- In Object Explorer, right-click a server and select Properties.
- Click the Advanced node.
- Under Miscellaneous, change the Max Text Replication Size option to the desired value.
More details can be found in these articles: