Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
After upgrading Qlik Sense Enterprise on to Windows May 2022 patch 11 or August 2022 patch 6, reload tasks may be listed as failed even if the script log completes successfully.
The engine logs (Engine\System Service_Engine_TIMESTAMP.log):
WARN QLIKSERVER XXXXX-b9df-48dc-a868-XXXX 20230130T151057.522+0100 12.1386.6.0 Command=Doc::DoSave;Result=409;ResultText=Warning: Conflict 0 0 1111411 QLK QLIKUSER XXXXX-47c2-4ea4-94c2-XXXXXX XXXXX-95f5-46e2-8b92-XXXXX ApplicationQLIK Engine Not available Doc::DoSave Doc::DoSave 409 Object write failed. XXXXXX-b9df-48dc-a868-XXXXX
The repository logs (Repository\Trace log called System_Engine_TIMESTAMP.log):
2072 20230129T193052.695+0100 ERROR QLIKSERVER System.Repository.Repository.Core.Repository.Common.TransactionUtility 185 XXXXX-d7f0-4983-8905-XXXX QLK\QLIKSERVICEUSER Error when committing The custom property value already assigned at
Qlik Sense Enterprise on Windows May 2022, August 2022
Warning: Modifying the Qlik Sense Repository manually is generally not supported by Qlik. Any modifications need to be done with extreme caution. Always back up your Qlik Sense database before committing changes.
This is caused by custom properties being duplicated and injected multiple times. The fix requires these duplicates to be removed.
SELECT "ID", "Definition_ID", "Value", "App_ID" FROM
( SELECT "ID", "Definition_ID", "Value", "App_ID",
ROW_NUMBER() OVER ( PARTITION BY "Value", "Definition_ID", "App_ID"
ORDER BY "App_ID" DESC, "ID"
) rn
FROM "CustomPropertyValues"
) t1 WHERE rn > 1 AND "App_ID" IS NOT null;
DELETE FROM "CustomPropertyValues"
WHERE "ID" IN
( SELECT "ID" FROM
( SELECT "ID", "Definition_ID", "Value", "App_ID",
ROW_NUMBER() OVER ( PARTITION BY "Value", "Definition_ID", "App_ID"
ORDER BY "App_ID" DESC, "ID"
) rn
FROM "CustomPropertyValues"
) t1 WHERE rn > 1 AND "App_ID" IS NOT null);
This is caused by a fix QB-9058, which has been introduced in May 2022 Patch 11 and August patch 6:
Qlik Sense: Possible to apply same custom property value more than once to a single app:
Fixed an issue where it was possible via QMC or API request to apply the same custom property value belonging to the same custom property definition more than once to the same Qlik Sense app/qvf.
So from those patch it is no longer possible to have any application with a duplicate custom property.
Duplicate properties will be shown as errors in the Qlik Sense log:
The custom property value already assigned
The diagnosis script above will also expose duplicate custom properties
In case of duplicated custom properties assigned to Users the above queries needs to be changed using "User_ID" :
SELECT "ID", "Definition_ID", "Value", "User_ID" FROM
( SELECT "ID", "Definition_ID", "Value", "User_ID",
ROW_NUMBER() OVER ( PARTITION BY "Value", "Definition_ID", "User_ID"
ORDER BY "User_ID" DESC, "ID"
) rn
FROM "CustomPropertyValues"
) t1 WHERE rn > 1 AND "User_ID" IS NOT null;
--- to clean ---
delete from "CustomPropertyValues"
WHERE "ID" IN
( SELECT "ID" FROM
( SELECT "ID", "Definition_ID", "Value", "User_ID",
ROW_NUMBER() OVER ( PARTITION BY "Value", "Definition_ID", "User_ID"
ORDER BY "User_ID" DESC, "ID"
) rn
FROM "CustomPropertyValues"
) t1 WHERE rn > 1 AND "User_ID" IS NOT null);