Getting a System Error when accessing to Confluence People tab

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。

Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Fisheye および Crucible は除く

要約

Confluence People tab throws System Error. This error is generally thrown when any content is referencing a missing user in the database.

診断

While navigating to the People tab below System Error on Confluence UI is rendered as well as in the application logs below logs can be seen.

2023-08-28 13:28:35,779 ERROR [http-nio-8090-exec-11] [atlassian.confluence.servlet.ConfluenceServletDispatcher] sendError Could not execute action
 -- referer: https://xyz.org/ | url: /browsepeople.action | traceId: abcdd09a86e3456 | userName: xyzabc
org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.atlassian.confluence.user.ConfluenceUserImpl#8a7e101821b824031003d]
	at org.hibernate.boot.internal.StandardEntityNotFoundDelegate.handleEntityNotFound(StandardEntityNotFoundDelegate.java:28)
	at org.hibernate.proxy.AbstractLazyInitializer.checkTargetState(AbstractLazyInitializer.java:244)
	at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:166)
	at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:268)
	at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:73)
	at com.atlassian.hibernate.adapter.proxy.JavassistLazyInitializer_ImplementV2Proxy.invoke(JavassistLazyInitializer_ImplementV2Proxy.java:70)
	at com.atlassian.confluence.user.ConfluenceUserImpl_$$_jvst166_7.getName(ConfluenceUserImpl_$$_jvst166_7.java)
	at com.atlassian.confluence.user.PersonalInformation.getUsername(PersonalInformation.java:87)
	at com.atlassian.confluence.user.actions.PeopleDirectoryAction.search(PeopleDirectoryAction.java:161)
	at com.atlassian.confluence.user.actions.PeopleDirectoryAction.doBrowse(PeopleDirectoryAction.java:130)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)


By checking the following query it can help to identify if any content is referencing a missing user in the database

SELECT * FROM CONTENT WHERE contenttype = 'USERINFO' AND username NOT IN (SELECT user_key FROM user_mapping);

If the above SQL query gives any output, it suggests that some content is referencing missing user(s) in the database.

原因

The reason for this issue is not clear but this is due to users which does not exist in the database but are having a content referring the user.

ソリューション

To fix this issue delete the content referring to the missing user(s). Follow below steps to fix this issue

  1. Confluence をシャットダウンします。
  2. Take full backup of Confluence Database
  3. Execute below SQL query to delete the content referring to missing users

    DELETE FROM CONTENT WHERE contenttype = 'USERINFO' AND username NOT IN (SELECT user_key FROM user_mapping);
  4. Confluence を起動します。




Last modified on Mar 12, 2024

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.