[
https://issues.apache.org/jira/browse/OAK-8245?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mark Adamcin updated OAK-8245:
------------------------------
Description:
The "explain" behavior of the core Query is very useful for helping to debug
JCR query execution planning. For xpath queries, the resulting "plan" column
refers to the result of running XPathToSQL2Converter to produce a JCR-SQL2
statement for execution. This SQL2 statement should be exposed through the same
API as the "plan", by way of an additional column named "statement" in the
single result row.
At this time, this underlying SQL2 statement is inaccessible to users of the
JCR Query interface, which can only provide the original XPath statement.
To access the converted SQL2 statement, a class targeting the JCR API must
implement a regular expression match against a log stream retrieved via slf4j
MDC.
This facility is not very portable, and an effective pattern on one version of
Oak may not be effective on a different version of Oak, for any number of
reasons.
Also, the XPathToSQL2Converter package is not exported in an OSGi environment,
so client code cannot use that API to reconstruct the SQL2 statement in
parallel.
was:
The "explain" behavior of the core Query is very useful for helping to debug
JCR query execution planning. For xpath queries, the resulting "plan" column
refers to the result of running XPathToSQL2Converter to produce a JCR-SQL2
statement for execution. This SQL2 statement should be exposed through the same
API as the "plan", by way of an additional column named "statement" in the
single result row.
At this time, this underlying SQL2 statement is inaccessible to users of the
JCR Query interface, which can only provide the original XPath statement.
To access the converted SQL2 statement, a class targeting the JCR API must
implement a regular expression match against a log stream retrieved via slf4j
MDC.
This facility is not very portable, and an effective pattern on one version of
Oak may not be effective on a different version of Oak, for any number of
reasons.
Also, the XPathToSQL2Converter package is not exported in an OSGi environment,
so client code cannot use that API to reconstruct the SQL2 statement in
parralel.
> Add column for executed statement to "explain" Query row, next to 'plan'
> column.
> --------------------------------------------------------------------------------
>
> Key: OAK-8245
> URL: https://issues.apache.org/jira/browse/OAK-8245
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: query
> Affects Versions: 1.12.0
> Reporter: Mark Adamcin
> Priority: Minor
>
> The "explain" behavior of the core Query is very useful for helping to debug
> JCR query execution planning. For xpath queries, the resulting "plan" column
> refers to the result of running XPathToSQL2Converter to produce a JCR-SQL2
> statement for execution. This SQL2 statement should be exposed through the
> same API as the "plan", by way of an additional column named "statement" in
> the single result row.
> At this time, this underlying SQL2 statement is inaccessible to users of the
> JCR Query interface, which can only provide the original XPath statement.
> To access the converted SQL2 statement, a class targeting the JCR API must
> implement a regular expression match against a log stream retrieved via slf4j
> MDC.
> This facility is not very portable, and an effective pattern on one version
> of Oak may not be effective on a different version of Oak, for any number of
> reasons.
> Also, the XPathToSQL2Converter package is not exported in an OSGi
> environment, so client code cannot use that API to reconstruct the SQL2
> statement in parallel.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)