cancel
Showing results for 
Search instead for 
Did you mean: 

Node without parents does not have root aspect

nimbus58
Champ in-the-making
Champ in-the-making
Hello,

I have a 33g system running fine on Ubuntu 10.04 64 and a Mysql on another machine.

I have just tried to do a replica of the system on another server as part of a crash recovery test ( DB and data-store)
and I end up with a reindexing going nuts.

I tried the same with a 34b system and no luck.

I get "Reindexer   672 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f"

Now it is always the same SpaceStore.
On the live system, the node browser give me an error but I do not know where or how to get rid of it.

For info: I have upgraded the system for the last 2 years with the same data and db without ever a problem.

Any help welcome:

(Snippet of catalina.out)
Nov 30, 2010 2:13:03 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Nov 30, 2010 2:13:03 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 746 ms
Nov 30, 2010 2:13:03 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Nov 30, 2010 2:13:04 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.26
Nov 30, 2010 2:13:04 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor host-manager.xml
Nov 30, 2010 2:13:04 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor alfresco.xml
Nov 30, 2010 2:13:06 PM org.apache.catalina.core.StandardContext addApplicationListener
INFO: The listener "org.apache.myfaces.webapp.StartupServletContextListener" is already configured for this context. The duplicate definition has been ignored.
14:13:13,505  INFO  [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/repository.properties]
14:13:13,512  INFO  [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/domain/transaction.properties]
14:13:13,523  INFO  [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from file [/opt/alfresco33g/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/module/tests/alfresco-global.properties]
14:13:13,532  INFO  [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from file [/opt/alfresco33g/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/module/test/alfresco-global.properties]
14:13:13,532  INFO  [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from URL [file:/opt/alfresco33g/tomcat/shared/classes/alfresco-global.properties]
14:13:13,615  INFO  [alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
14:13:30,549  INFO  [extensions.webscripts.TemplateProcessorRegistry] Registered template processor Repository Template Processor for extension ftl
14:13:30,552  INFO  [extensions.webscripts.ScriptProcessorRegistry] Registered script processor Repository Script Processor for extension js
14:13:36,900  INFO  [domain.schema.SchemaBootstrap] Schema managed by database dialect org.hibernate.dialect.MySQLInnoDBDialect.
14:13:38,277  INFO  [domain.schema.SchemaBootstrap] No changes were made to the schema.
14:13:38,655  INFO  [management.subsystems.ChildApplicationContextFactory] Starting 'sysAdmin' subsystem, ID: [sysAdmin, default]
14:13:38,687  INFO  [alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
14:13:38,698  INFO  [management.subsystems.ChildApplicationContextFactory] Startup of 'sysAdmin' subsystem, ID: [sysAdmin, default] complete
14:13:40,545  INFO  [management.subsystems.ChildApplicationContextFactory] Starting 'thirdparty' subsystem, ID: [thirdparty, default]
14:13:40,579  INFO  [alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
14:13:42,074  INFO  [management.subsystems.ChildApplicationContextFactory] Startup of 'thirdparty' subsystem, ID: [thirdparty, default] complete
14:13:42,075  INFO  [management.subsystems.ChildApplicationContextFactory] Starting 'OOoDirect' subsystem, ID: [OOoDirect, default]
14:13:42,130  INFO  [alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
14:13:42,927  WARN  [alfresco.util.OpenOfficeConnectionTester] An initial OpenOffice connection could not be established.
14:13:42,951  INFO  [management.subsystems.ChildApplicationContextFactory] Startup of 'OOoDirect' subsystem, ID: [OOoDirect, default] complete
14:13:44,964  INFO  [node.index.FullIndexRecoveryComponent] Index recovery started: 22,680 transactions.
14:14:07,153  ERROR [index.AbstractReindexComponent.threads] Reindexer    20 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:07,339  INFO  [node.index.FullIndexRecoveryComponent]    10 % complete.
14:14:13,882  ERROR [index.AbstractReindexComponent.threads] Reindexer    40 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:13,913  INFO  [node.index.FullIndexRecoveryComponent]    20 % complete.
14:14:18,238  ERROR [index.AbstractReindexComponent.threads] Reindexer    60 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:18,307  INFO  [node.index.FullIndexRecoveryComponent]    30 % complete.
14:14:21,612  ERROR [index.AbstractReindexComponent.threads] Reindexer    80 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:24,658  INFO  [node.index.FullIndexRecoveryComponent]    40 % complete.
14:14:26,164  ERROR [index.AbstractReindexComponent.threads] Reindexer   100 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:27,721  INFO  [node.index.FullIndexRecoveryComponent]    50 % complete.
14:14:29,236  ERROR [index.AbstractReindexComponent.threads] Reindexer   120 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:30,673  INFO  [node.index.FullIndexRecoveryComponent]    60 % complete.
14:14:32,423  ERROR [index.AbstractReindexComponent.threads] Reindexer   140 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:33,633  INFO  [node.index.FullIndexRecoveryComponent]    70 % complete.
14:14:35,039  ERROR [index.AbstractReindexComponent.threads] Reindexer   160 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:37,784  ERROR [index.AbstractReindexComponent.threads] Reindexer   180 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
14:14:37,831  INFO  [node.index.FullIndexRecoveryComponent]    80 % complete.
14:14:40,990  ERROR [index.AbstractReindexComponent.threads] Reindexer   200 failed with error: Node without parents does not have root aspect: workspace://SpacesStore/5012764b-dbec-4ed9-8c35-4c0c60acdb1f.
10 REPLIES 10

morfeusx
Champ in-the-making
Champ in-the-making
I don't know for now what's causing it, but these nodes can be removed.

This select will help you find these nodes:
select an.* from alf_node an where an.NODE_DELETED = '0' and an.id NOT IN(SELECT root_node_id from alf_store) and an.id NOT IN(SELECT child_node_id from alf_child_assoc);

This is just checking select if these nodes doesn't have any children:
select * from alf_child_assoc asoc where asoc.parent_node_id IN(select an.id from alf_node an where an.NODE_DELETED = '0' and an.id NOT IN(SELECT root_node_id from alf_store) and an.id NOT IN(SELECT child_node_id from alf_child_assoc));
If they have some(never happen to me), you should delete this childrens and associations with parents. Delete should be made same way as lower, setting node_deleted param to 1.

And finally remove of these "lost nodes":
update alf_node an set an.NODE_DELETED = '1' where an.ID IN (select an.id from alf_node an where an.NODE_DELETED = '0' and an.id NOT IN(SELECT root_node_id from alf_store) and an.id NOT IN(SELECT child_node_id from alf_child_assoc));

If you ever find out, how they are created, let me know.
I would like to answer to my boss, what cause corruption of our production repository. For now I can just answer…it's mystery sir, but don't worry, I have a magic sql update…  Smiley Very Happy

nimbus58
Champ in-the-making
Champ in-the-making
Thanks morfeusx,

The nodes are gone but the problem is still there in another way.

The indexer is going crazy,

10:30:43,396  INFO  [node.index.FullIndexRecoveryComponent]    7,710 % complete.
10:30:47,369  INFO  [node.index.FullIndexRecoveryComponent]    7,720 % complete.
10:30:49,860  INFO  [node.index.FullIndexRecoveryComponent]    7,730 % complete.
10:30:54,154  INFO  [node.index.FullIndexRecoveryComponent]    7,740 % complete.
10:30:56,602  INFO  [node.index.FullIndexRecoveryComponent]    7,750 % complete.
10:30:59,053  INFO  [node.index.FullIndexRecoveryComponent]    7,760 % complete.
10:31:03,810  INFO  [node.index.FullIndexRecoveryComponent]    7,770 % complete.
10:31:06,167  INFO  [node.index.FullIndexRecoveryComponent]    7,780 % complete.
10:31:09,688  INFO  [node.index.FullIndexRecoveryComponent]    7,790 % complete.
10:31:11,948  INFO  [node.index.FullIndexRecoveryComponent]    7,800 % complete.
10:31:15,694  INFO  [node.index.FullIndexRecoveryComponent]    7,810 % complete.
10:31:18,250  INFO  [node.index.FullIndexRecoveryComponent]    7,820 % complete.
10:31:20,707  INFO  [node.index.FullIndexRecoveryComponent]    7,830 % complete.
10:31:24,631  INFO  [node.index.FullIndexRecoveryComponent]    7,840 % complete.
10:31:28,213  INFO  [node.index.FullIndexRecoveryComponent]    7,850 % complete.
10:31:32,360  INFO  [node.index.FullIndexRecoveryComponent]    7,860 % complete.
10:31:34,847  INFO  [node.index.FullIndexRecoveryComponent]    7,870 % complete.
10:31:38,607  INFO  [node.index.FullIndexRecoveryComponent]    7,880 % complete.
10:31:41,084  INFO  [node.index.FullIndexRecoveryComponent]    7,890 % complete.
10:31:44,054  INFO  [node.index.FullIndexRecoveryComponent]    7,900 % complete.

The last run gave me over 1.000.000 % complete (after 4 days) then the JVM died.

I am trying again with a cleaned database (bad nodes removed) and a blank index and indexer to AUTO.

I am completely out of idea.

nimbus58
Champ in-the-making
Champ in-the-making
SOLVED (Maybe)

I found that I had a bunch of entries in alf_node where the acl_id where NULL.
Via the node browser from our live system, it seemed that all where linked to "doclib" files peppered all over the system. These files had owners but no rights (I assume).
I deleted all the entries with NULL acl_id and restarted the system.
Reindexing went fine and the whole backup system is up and running.

Don't know what created these "doclib" files but they are everywhere in our live system.

The backup system is now running with 3.4c.

boutch55555
Champ in-the-making
Champ in-the-making
The doclib files are the documents thumbnails.

marutiprasad
Champ in-the-making
Champ in-the-making
Hi nimbus58,

How you deleted those NULL ACL ID nodes, is it through the sql query.could you please post the procedure.

Thanks
Maruti.

imagem
Champ in-the-making
Champ in-the-making
We have upgraded from version 3.4 to version 4.0b then to 4.0c. We have the "node without parent".

When we execute the following sql statement :

select an.* from alf_node an where an.NODE_DELETED = '0' and an.id NOT IN(SELECT root_node_id from alf_store) and an.id NOT IN(SELECT child_node_id from alf_child_assoc);

we are not getting any result so we can't use it to delete the nodes. Anyone got an idea why ?

tgmweb
Champ in-the-making
Champ in-the-making
@imagem

Try:

select an.* from alf_node an where an.NODE_DELETED = '' and an.id NOT IN(SELECT root_node_id from alf_store) and an.id NOT IN(SELECT child_node_id from alf_child_assoc);

x1m
Champ in-the-making
Champ in-the-making
I get an error when trying to remove the nodes found.

update alf_node an set an.NODE_DELETED = '1' where an.id IN(select an.id from alf_node an where an.NODE_DELETED = '0' and an.id NOT IN(SELECT root_node_id from alf_store) and an.id NOT IN(SELECT child_node_id from alf_child_assoc));

Give me the following error:
ERROR:  column "an" of relation "alf_node" does not exist
LINE 1: update alf_node an set an.NODE_DELETED = '1' where an.ID IN …
                               ^

I am using Alfresco 4.0.c with postgresql. Anyone had the same error and can help?

xarope
Champ in-the-making
Champ in-the-making
as with the above entries, 4.0 uses boolean datatype for node_deleted, which is true/false, rather than 0/1, so your query should look like this:

update alf_node an 
set an.NODE_DELETED = true
where an.ID IN
(select an.id from alf_node an where an.NODE_DELETED = false
and an.id NOT IN(SELECT root_node_id from alf_store)
and an.id NOT IN(SELECT child_node_id from alf_child_assoc));