-
Notifications
You must be signed in to change notification settings - Fork 74
Description
Currently if a query is being created that makes use of "extract-document-data":
<extract-document-data selected="all">
<extract-path>//*:metadata</extract-path>
<extract-path>//document[@xml:lang='en']/standard</extract-path>
</extract-document-data>The query yields a valid response from MarkLogic Server but the SearchHandle object in the Java API renders a Warn level Log message:
Unexpected metrics element {http://marklogic.com/appservices/search}extract-resolution-time
The message makes a reference to line 1536 of the class src/main/java/com/marklogic/client/io/SearchHandle.java. In the code, there is a section that looks like this:
QName queryName = new QName(SEARCH_NS, "query-resolution-time");
QName facetName = new QName(SEARCH_NS, "facet-resolution-time");
QName snippetName = new QName(SEARCH_NS, "snippet-resolution-time");
QName metadataName = new QName(SEARCH_NS, "metadata-resolution-time");
QName totalName = new QName(SEARCH_NS, "total-time");This appears to be missing a line like this:
QName extractName = new QName(SEARCH_NS, "extract-resolution-time");These lines appear to be checking the query resultset to identify all search:search metrics based elements, such as "query-resolution-time".
Currently, it appears to be the case that the "extract-resolution-time" element is missing from this list; this element should be added to the enumeration in line 1504 to 1508 and further changes may need to be made in the client API.
An initial attempt to fix this can be found at:
ableasdale@93fb090
At this stage, it appears that this change alone may not be enough...