Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Celebration

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

cannot edit/create page anymore after upgrading to recent version

error:
content_procedure_for_denormalised_permissions does not exist

3 comments

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
Aug 13, 2021

context?

when click Create. it is ok to read existing pages, but not for editing, cannot save.

Capture.PNG

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
Aug 14, 2021

OK, you've run into a known problem in upgrading MySQL, and there's a one-off fix - see https://confluence.atlassian.com/confkb/confluence-mysql-database-migration-causes-content_procedure_for_denormalised_permissions-does-not-exist-error-1072474724.html

In the question you linked to, there's actually a second problem, in that the posters are mostly talking about Mariadb - while that mostly tends to work ok, it is not supported and should not be used for Confluence.  It often causes unfixable problems, especially during upgrades, and can lead people in circles when errors like this one happen, as they spend ages trying to use MySQL fixes which don't quite apply to Maria and hence don't work.

Hi, Nic,

Thanks for the info. I read that solution before, but I don't have old back up any more.
question:
- any way/script to fix the procedure issue?

- if I do the site backup, and restore to a new instance, is it ok?

Jing

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
Aug 14, 2021

It's not the application that is failing here, it's the database not meeting the needs of the application.  The database is also technically fine, it's just not capable of supporting the application in its current format.

You don't need a backup, you've got a perfectly valid database.  As the doc says, dump that out, and restore it, then reconnect Confluence.

why the solution(create procedures) delete?

or atlassian provide the way to re-create those missing procedures.

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
Aug 16, 2021

Because it's the database that is missing stuff, not the application.  Atlassian can't do it, the application needs the database to be reconfigured to support it and the data rebuilt to match the new configurations (restoring from the backup does that rebuild)

You can create the 5 missing procedures by executing this:

Note1: It has to be executed by a privileged user (root)

Note2: Replace my_user with your confluence database user

 

DELIMITER ;;
CREATE DEFINER=`my_user`@`%` PROCEDURE `content_permission_procedure_for_denormalised_permissions`(OUT isServiceDisabled BOOL)
BEGIN
SET isServiceDisabled = TRUE;
END ;;

CREATE DEFINER=`my_user`@`%` PROCEDURE `content_perm_set_procedure_for_denormalised_permissions`(OUT isServiceDisabled BOOL)
BEGIN
SET isServiceDisabled = TRUE;
END ;;

CREATE DEFINER=`my_user`@`%` PROCEDURE `content_procedure_for_denormalised_permissions`(OUT isServiceDisabled BOOL)
BEGIN
SET isServiceDisabled = TRUE;
END ;;

CREATE DEFINER=`my_user`@`%` PROCEDURE `space_permission_procedure_for_denormalised_permissions`(OUT isServiceDisabled BOOL)
BEGIN
SET isServiceDisabled = TRUE;
END ;;

CREATE DEFINER=`my_user`@`%` PROCEDURE `space_procedure_for_denormalised_permissions`(OUT isServiceDisabled BOOL)
BEGIN
SET isServiceDisabled = TRUE;
END ;;

Like # people like this

I ran into this exact problem today and the above worked perfectly. Thanks @jblanco

@jblancoI'm on Confluence 7.13.7 and had this issue after moving Confluence to different server and it worked!

Dear @jblanco ,

I would like to confirm with you what confluence database user you mean in the Note 2.

I tried with the user who connects to database (the same who is in confluence.cfg.xml) because I understand that as my confluence database user. Unfortunately, I get another error message telling me that user does not exist.

Could you please clarify it?

confluence version: 7.19.16

Database: MySQL 8

Thank you in advance.

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events