Vista Combinata Vista Piatta Vista ad Albero
Discussioni [ Precedente | Successivo ]
toggle
Jon Haikarainen
How long should a permission data migration process take?
25 gennaio 2012 0.52
Risposta

Jon Haikarainen

Punteggio: New Member

Messaggi: 9

Data di Iscrizione: 1 luglio 2010

Messaggi recenti

Hi,

I have a question regarding Liferay upgrades, in this case from LR5EESP2 (5.2.6) to LR6EESP2 (6.0.12). I've managed to complete the upgrade process successfully using the legacy properties for 5.2 including the use of the older permission check algorithm. After restarting Liferay, the output suggests me to perform a data migration:

1
207:49:49,014 WARN  [MainServlet:879] Liferay is configured to use permission algorithm 5. Versions after 6.1 will only support algorithm 6 and above. Please sign in as an administrator, go to the Control Panel, select "Server Administration", select the "Data Migration" tab, and convert from this legacy permission algorithm as soon as possible.


This seemed fair enough, so I started the migration process. What now worries me is the time this process consumes. How long does this kind of data migration process normally take? I know it depends entirely on the size of the database, but in this case the database isn't enormous, around 150Mb with 11k+ users, 4k+ images and 3k+ journal articles. I started the data migration process yesterday and now it has already run for over 24 hours. It doesn't appear to be stuck however, as every once in a while a new log message pops up. Also monitoring the application with jvisualvm doesn't show any significant memory problems.

The upgrade processes previously took also a lot of time, 5+ hours. At first I run the upgrade processes using the new permission check algorithm which appeared to be much quicker, but that resulted in permission-related problems for example with image gallery images. Therefore I had to start over using the older algorithm.

I'm currently running this in my local development environment through Liferay Developer Studio for easy debugging so hopefully the process is quicker on more effective, real server machines. Still, I'm a little bit worried..

Do I just have to be patient regarding this? Any experiences?

Thanks,

Jon
Ken Dong
RE: How long should a permission data migration process take?
25 gennaio 2012 12.11
Risposta

Ken Dong

LIFERAY STAFF

Punteggio: New Member

Messaggi: 6

Data di Iscrizione: 31 agosto 2010

Messaggi recenti

I have seen permission upgrades taking a long time from Algorithm 5 to 6, especially if you have a lot of assets (MB posts, blogs, wikis) and a lot of roles with permissions.
Jacob Caniparoli
RE: How long should a permission data migration process take?
27 giugno 2012 9.38
Risposta

Jacob Caniparoli

Punteggio: Junior Member

Messaggi: 26

Data di Iscrizione: 22 giugno 2010

Messaggi recenti

Hi Jon,

How long did this end up taking for you and how many users did you have?

I am currently running into the same issue, we are wondering if deleting old users (we are a University, people graduate) would speed this process up significantly. We can't really afford for the portal to be down for days at a time...

Thanks,
Jacob
David H Nebinger
RE: How long should a permission data migration process take?
27 giugno 2012 9.47
Risposta

David H Nebinger

Community Moderator

Punteggio: Liferay Legend

Messaggi: 11511

Data di Iscrizione: 1 settembre 2006

Messaggi recenti

Certainly the more unused stuff you can remove, the better.
Jacob Caniparoli
RE: How long should a permission data migration process take?
27 giugno 2012 10.00
Risposta

Jacob Caniparoli

Punteggio: Junior Member

Messaggi: 26

Data di Iscrizione: 22 giugno 2010

Messaggi recenti

David H Nebinger:
Certainly the more unused stuff you can remove, the better.


That is certainly true, however, deleting these users is not an ideal scenario. There are cases where a student might come back for grad school or something like that and it would be nice to still have their account. If this is only going to knock a few hours off it is probably not worth it, but if it takes off a day then its something we would need to look at.

Thanks,
Jacob
Iker Garcia
RE: How long should a permission data migration process take?
4 dicembre 2012 8.00
Risposta

Iker Garcia

Punteggio: New Member

Messaggi: 3

Data di Iscrizione: 28 novembre 2011

Messaggi recenti

We are trying to upgrade a portal from Liferay 5.2.3 to 6.0.
At the moment the database upgrade process is 'stuck' at Verifying com.liferay.portal.verify.VerifyPermission

We are using the permission algorithm 5 and that is what we have indicated in the 6.0 portal-ext.property file before starting the server. permissions.user.check.algorithm=5

In our 5.2.3 database we have the following data:

RESOURCE_: 173,154 entries.
RESOURCECODE: 116 entries (Scope = 4)
RESOURCEACTION: 0 entries
RESOURCEPERMISSION: 0 entries

Does this mean that the upgrade process will have to insert 20,000,000+ new entries in PERMISSION_ table ?
At current rate (22 inserts / minute) this would take almost 2 years !!! Which is absolutely infeasible.


This is the hibernate logs we are getting (22 per minute):

Hibernate: insert into Permission_ (companyId, actionId, resourceId, permissionId) values (?, ?, ?, ?)
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select permission0_.permissionId as permissi1_28_, permission0_.companyId as companyId28_, permission0_.actionId as actionId28_, permission0_.resourceId as resourceId28_ from Permission_ pe
rmission0_ where (permission0_.actionId=? )AND(permission0_.resourceId=? )
Hibernate: select roleimpl0_.roleId as roleId41_, roleimpl0_.companyId as companyId41_, roleimpl0_.classNameId as classNam3_41_, roleimpl0_.classPK as classPK41_, roleimpl0_.name as name41_, roleimpl0
_.title as title41_, roleimpl0_.description as descript7_41_, roleimpl0_.type_ as type8_41_, roleimpl0_.subtype as subtype41_ from Role_ roleimpl0_ where (roleimpl0_.name=? ) order by roleimpl0_.name
ASC

Regards