Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
master
-
None
-
OBT:
Build date: 2022-04-05 @15:41:15
Build system: CentOS_Linux_7
Hardware: CPU/Cores: 8, RAM: 31 GB
IP Address: 127.0.0.1 (OBT-007)
Build on git branch: master
Date: Mon Apr 4 11:29:34 2022 +0100
SHA: 1D948282 (47117abe385e7ddaff22c78476312e18)
Number of commits (24h): 0
Build type: Debug
Number of Thor slaves: 4
Number of channels per Thor slave: 1OBT: Build date: 2022-04-05 @15:41:15 Build system: CentOS_Linux_7 Hardware: CPU/Cores: 8, RAM: 31 GB IP Address: 127.0.0.1 (OBT-007) Build on git branch: master Date: Mon Apr 4 11:29:34 2022 +0100 SHA: 1D948282 (47117abe385e7ddaff22c78476312e18) Number of commits (24h): 0 Build type: Debug Number of Thor slaves: 4 Number of channels per Thor slave: 1
-
Not applicable
Description
The confusing error message is:
+Exception(s): +2: 2022-04-05 17:31:09 GMT: Error - syntax error Expecting < [line 50, file offset 1936] +er_version value=8.7.0/> +</Archive> +M*ERROR*ismatched prefix ComplexHelperSize Size
A search with "ismatched prefix" pointed to the wuattr.cpp:173-180
#ifdef _DEBUG const char * prefix = queryMeasurePrefix(info.measure); if (info.name && prefix && *prefix) { if (!startsWith(info.name, prefix)) printf("Mismatched prefix %s %s\n", info.name, prefix); } #endif
The problem is the name of a recently introduced attribute (HPCC-27453):
CHILD(ComplexHelperSize, SMeasureSize, "complexHelperSize"),
is not follow the expected naming.
The "ComplexHelperSize" is "SMeasureSize" kind of attribute but it doesn't start with "Size" (as all previously defined "SizeClassApprox" or "SizePreload" attributes do). This expected "Size" prefix defined in queryMeasurePrefix() in jstats.cpp:635.
It seems the debug information only a message about unconformity, but later it is handled as an exception and prevents workunit creation. Unfortunately, I can't find any further information in the platform log. files.
I changed the name of this attribute to "SizeComplexHelper" and all places where it is defined and used and the problem disappeared.