Setting Query Options in Go OJAI
There are two categories of options you can set in your Go OJAI application. This topic describes both and shows you how to set each.
Setting Query Options Using a Go OJAI Function Call
Option Name | Description |
---|---|
IncludeQueryPlan |
Enables or disables availability of the query plan for retrieval. Value:
Default:
|
ResultAsDocument |
Enables or disables returning the query result as an OJAI
Document object list versus a Go map list.Value:
Default:
|
Timeout |
Query timeout in milliseconds. Maximum allowed value is 2147483647 Default: None; no timeout |
To set any of these query options, you must pass the option as the second parameter in the
DocumentStore.FindQueryWithContext
function.
The following code snippet sets the query timeout to 3000 milliseconds:
timeoutCtx, cancel := context.WithTimeout(context.Background(), time.Duration(3*time.Second))
result, err := suite.store.FindQueryWithContext(query, findOptions, timeoutCtx)
cancel()
Setting Query Options in Go Using OJAI Query Syntax
OJAI Query Options describes query options that are
available in all OJAI clients. To use these options in Go OJAI, you must construct your
query in JSON format and use the $options
keyword. See OJAI Query Syntax
for details about the syntax, including an example.