Salesforce

WorldServer: After a WorldServer upgrade, reference files/project attributes are no longer visible in active projects created before the upgrade

« Go Back

Information

 
Article TypeSolution Article
Scope/EnvironmentWorldServer
Symptoms/Context
After a WorldServer upgrade and/or a migration to a new server, reference files/project attributes are no longer visible in active projects created before the upgrade. You might see these errors:

User-added image
Resolution
If the location of the Attributes folder has been changed and the folder has been moved to the new location, the first action is to update the file_attribute_storage= property in general.properties file as described in this article:

WorldServer - Where to find WorldServer Project File Attributes on the server

The second step is to adapt/change the absolute path in the Database as well.

This is the SQL query to make the relevant change (oldpath and newpath need to be replaced with the actual values):

UPDATE attributeObjValues 
SET attributeObjValues.value = replace(attributeObjValues.value, 
'oldpath\attributes\', 
'newpath\attributes\') 
WHERE attributeId IN 

SELECT attributeId 
FROM attributes 
WHERE type IN (8,10) 

AND value LIKE 'oldpath\attributes\%'; 


If you need to find the value for [oldpath] and [newpath] in the Database, run these queries. Note: these are examples. Adapt them to the name of attributes folders as set in general.properties. Per default, it is attributes. Sample queries:

SELECT * 
FROM attributeObjValues where value LIKE '%\attributes%' 


SELECT * 
FROM attributeObjValues where value LIKE '%temp\attributes%' 


Here is a possible output of such a query:



So depending on the actual old path found using the SELECT queries above (in this example, W:\WorldServer\attributes\), this is how an update query to change the path to the attributes folder to a new one (in this example, 'W:\NewFolder\attributes\') could look like:
 
UPDATE attributeObjValues 
SET attributeObjValues.value = replace(attributeObjValues.value, 
'W:\WorldServer\attributes\', 
'W:\NewFolder\attributes\') 
WHERE attributeId IN 
( 
SELECT attributeId 
FROM attributes 
WHERE type IN (8,10) 
) 
AND value LIKE 'oldpath\attributes\%'; 

Note: in case you have migrated from an AWS environment to a Windows server environment, you will need to adapt the Unix folder directory path to the Windows folder directory path:

UPDATE attributeObjValues
SET value = REPLACE(value , '/', '\')
WHERE value LIKE ('/worldserver/attributes%');


UPDATE attributeObjValues
SET value = REPLACE(value , '\worldserver\', 'W:\WorldServer\')
WHERE value LIKE ('\worldserver\attributes%');
Root Cause
The Attributes folder on the new server is on a different location than before the upgrade. If the location of the Attributes folder has been changed and the folder has been moved to the new location, projects created before the upgrade will still refer to the previous path and cannot find the reference file.
Reference
Attachment 1 
Attachment 2 
Attachment 3 
Attachment 4 
Attachment 5 

Powered by