1 person found this helpful
Jena Adapter query hints do not work with SEM_MATCH. Only the hints documented in Section 1.6 are supported for SEM_MATCH.
Sorry about the confusion in the docs. Jena Adapter does effectively "push" those other hints to SEM_MATCH but the hints generated for SEM_MATCH use a different syntax than the Jena specification. The ones you specifically mention (DOP, BEST_EFFORT_QUERY, and TIMEOUT) do not have equivalent SEM_MATCH hints because these hints are used to control additional logic on the Jena Adapter side that influence SQL execution.
You can influence DOP and ODS with a plain SQL hint in the SQL that contains SEM_MATCH. For example:
SELECT /*+ parallel(8) dynamic_sampling(6) */ x
BEST_EFFORT_QUERY and TIMEOUT are not available, but there are a variety of ways to kill a long running query (e.g., with Ctrl-C or from Enterprise Manager).
Hope that helps,
Thank you for these details Matt.
In Jena, BEST_EFFORT_QUERY=t, when used with the TIMEOUT=n option, is said to return all matches found in n seconds for the SPARQL query. It is not clear for me how to achieve the same behavior with a SEM_MATCH executed via oracle.jdbc.driver.OracleDriver (returning all matches already found and not only killing the query).