cancel
Showing results for 
Search instead for 
Did you mean: 

Integrity Error after Alfresco Upgrade

texano
Champ in-the-making
Champ in-the-making
Hi,

I've upgrade my Alfresco installation with 20GB repository content from 4.2.C to the newest 5.0.D.
Now we are having errors related to "Mandatory property not set" and "node.integrity.IntegrityException" when creating new sites, viewing tasks, etc. This errors are show in Alfresco Share page and in catalina.out logs.
Please check the attached files.


2015-04-25 19:57:54,094  ERROR [extensions.webscripts.AbstractRuntime] [http-apr-8080-exec-8] Exception from executeScript - redirecting to status template error: 03250167 Found 1 integrity violations:
Mandatory property not set:
   Node: workspace://SpacesStore/32fddf43-103a-4f48-b001-b48552dff3ad
   Name: 32fddf43-103a-4f48-b001-b48552dff3ad
   Type: {http://www.alfresco.org/model/content/1.0}person
   Property: {http://www.alfresco.org/model/content/1.0}sizeCurrent
org.alfresco.repo.node.integrity.IntegrityException: 03250167 Found 1 integrity violations:
Mandatory property not set:
   Node: workspace://SpacesStore/32fddf43-103a-4f48-b001-b48552dff3ad
   Name: 32fddf43-103a-4f48-b001-b48552dff3ad
   Type: {http://www.alfresco.org/model/content/1.0}person
   Property: {http://www.alfresco.org/model/content/1.0}sizeCurrent
        at org.alfresco.repo.node.integrity.IntegrityChecker.checkIntegrity(IntegrityChecker.java:664)
        at org.alfresco.repo.node.integrity.IntegrityChecker.beforeCommit(IntegrityChecker.java:766)




Can you guys help me with this?

Thank you.

33 REPLIES 33

texano
Champ in-the-making
Champ in-the-making
Hi Mrogers,

That's exactly what I'm trying to do, at least until a new release comes out. Can you tell me how i can set sizeCurrent = 0 on all person nodes? I don't know the alfresco "core" enough to perform this task. Tried query the database (postgres) but no luck yet

Thank you.

jforeman
Champ in-the-making
Champ in-the-making
I'm in the same boat as texano. Any help is appreciated, mrogers!

texano
Champ in-the-making
Champ in-the-making
Hi,

Any solution so far?


Thanks.

rjohnson
Star Contributor
Star Contributor
No idea if this will work but it may.

1. Turn off quotas in alfresco-global.properties
if that doesn't work
2. Go to you users & set a quota

Failing that you will have to find the user record inthe DB and set that.

jforeman
Champ in-the-making
Champ in-the-making
Tried suggestions #1 and #2. Neither worked. Integrity violations persisted (and when attempting to set a quota through the web interface, the exception is actually shown on the page).

rjohnson
Star Contributor
Star Contributor
Well, you could look at the DB direct & see if you can fix it there, but that is not "recommended" practice.

First back up your DB at least twice and make sure your backups are good.

Based on my 4.2c DB, after having a quick root around.

You can find all the "person" nodes by searching in alf_node for records where type_qname_id = 35 (you can check this hasn't changed in 5.0 by looking in alf_qname for local_name = person)

For each person node there should be a row in alf_node_properties as follows:-

node_id = the node id of the person node
actual_type_n = 0
persisted_type_n = 0
boolean_value = f
long_value = 0
float_value = 0
double_value = 0
string_value = null
serializable_value = null
qname_id = 36
list_index = -1
locale_id = 1

36 is the sizeCurrent property. Again, you can check that qname_id 36 is still sizeCurrent by looking in alf_qname for local_name = sizeCurrent.

Find the missing rows, add them and your error should go away.

But I cannot reiterate strongly enough to try this on a test version first & backup your database before you try it and test it thoroughly if it seems to have worked because fiddling direct in the DB is not generally advised and I have not tested this myself.

102020
Champ on-the-rise
Champ on-the-rise
In my case, it's all users across the board. I can trigger the error by creating a site, changing the 'my activities' options, or the 'document action' field (slider) triggers the error.

I looked at the node browser, the sizeCurrent property is null, that's what it's complaining about, and it should be a integer of long.

You can manually fix the issue by simply deleting your user and recreating, kind of a pain though.

Also I did find this patch, but it's for 4.2.f not 5.0.d, will need to test this too.
https://svn.alfresco.com/repos/alfresco-open-mirror/alfresco/COMMUNITYTAGS/V4.2f/root/projects/repos...


102020
Champ on-the-rise
Champ on-the-rise
Okay no need to get into db patching, found a better resolution - and honestly, not sure why quotas are not enabled by default.

I added the following 2 params to my alfresco-global.properties, restart tomcat and your all fixed up.


### Quotas ###
system.usages.enabled=true

### Db PostScript ###
db.schema.update=true


I would turn the db.schema.update to false once this is complete, it forces the db to double check everything, which in this case, populates the null field sizeCurrent which is related to user quotas.


Cheers!

vijays
Champ in-the-making
Champ in-the-making
@102020, many thanks. This worked for me too.

douglascrp
World-Class Innovator
World-Class Innovator
Thank you for sharing this.
It solved our problem.