It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

PermissionManager slow performance

To change the permissions for a page or a blogpost I am using the PermissionManager. This is working fine in a smaller Confluence System but in an great system like our we get performance trouble. We want to edit existing group names, for this I need to change also the permissions to a new group name.

Example:

Group1 will be change to Group1a, so I must set all page and blogpost permissions from Group1 to Group1a.

To iterate over all pages in all spaces with all page ancestors need extremely much time, several hours. So to solve this performance problem, I am make an SQL Update statement on the CONTENT_PERM table. This is working as aspected, are maybe other changes needed which I don't see an the API will make?

1 answer

0 votes
nic Community Leader Feb 07, 2017

>I am make an SQL Update statement

Please tell me you are doing that while Confluence is off-line, and you take a backup first?

We want to do such scenarios every night. I am using a confluence job, inside that I am using a TransactionTemplate, we don't want to make every time a backup.

nic Community Leader Feb 07, 2017

No, you don't.  Do not amend the database of an Atlassian application without a full backup, and it being off line when you do it.  It will break.

Could you explain what you are trying to do here?  What is your database hack doing?

We want the possibility to change the group name. As I said, from Group1 to Group1a, Confluence doesn't support that, for Confluence is a group immutable, but we need this. So I am create a new group which bend all group rights from the old Group1 to the new group Group1a.
With the regular API from Confluence is this not possible (Job duration ~ 21h) 

UPDATE CONTENT_PERM
SET GROUPNAME = 'Group1a'
WHERE GROUPNAME = 'Group1';
nic Community Leader Feb 07, 2017

Ok, that is really going to break all sorts of things in Confluence.

Do not do it.

Go back to your group maintenance and do it properly.  Groups should not change.  Membership of groups is totally mutable, it's fine to add and remove people from groups daily.  But if you are in a position where you want to change the name of a group more than once a year, you have got your group management utterly utterly wrong.

OK, as a hint for you, we will broadcast the organisational structure from an external database to confluence. From time to time the group name will be changing here. 

So, could you tell me how can I achieve a flexible group structure, which will broadcast the rights from the former group to the new group.

I think it's a normal process, in every organisation things will be changed, so maybe Confluence will offer in future releases an mutable group name.

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted in United States

Welcome new members!

Wow, I got swamped and now that I've finally gotten my head back above water, I find we have several new members! Welcome @Darren Keith lowman , @Amanda Babb , @Luis Zapata , @Joli Holmes , and @bh...

20 views 0 1
View post

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you