Hi @sreeks ,
Below is the defined index:
{
"type": "fulltext-index",
"name": "books_one",
"uuid": "5f1bb864216916be",
"sourceType": "couchbase",
"sourceName": "books",
"sourceUUID": "82e1626c2183fe3ac0ded8ebf6108f76",
"planParams": {
"maxPartitionsPerPIndex": 64,
"indexPartitions": 1
},
"params": {
"doc_config": {
"docid_prefix_delim": "",
"docid_regexp": "",
"mode": "type_field",
"type_field": "_class"
},
"mapping": {
"analysis": {},
"default_analyzer": "standard",
"default_datetime_parser": "dateTimeOptional",
"default_field": "_all",
"default_mapping": {
"dynamic": true,
"enabled": false
},
"default_type": "_default",
"docvalues_dynamic": true,
"index_dynamic": true,
"store_dynamic": false,
"type_field": "_type",
"types": {
"com.org.One": {
"default_analyzer": "keyword",
"dynamic": false,
"enabled": true,
"properties": {
"field1": {
"dynamic": false,
"enabled": true,
"fields": [
{
"analyzer": "keyword",
"index": true,
"name": "field1",
"store": true,
"type": "text"
}
]
},
"field2": {
"dynamic": false,
"enabled": true,
"properties": {
"field3": {
"dynamic": false,
"enabled": true,
"fields": [
{
"include_term_vectors": true,
"index": true,
"name": "field3",
"store": true,
"type": "number"
}
]
},
"field4": {
"dynamic": false,
"enabled": true,
"fields": [
{
"name": "field4",
"store": true,
"type": "text"
}
]
},
"field5": {
"dynamic": false,
"enabled": true,
"properties": {
"field6": {
"dynamic": false,
"enabled": true,
"properties": {
"field7": {
"dynamic": false,
"enabled": true,
"fields": [
{
"index": true,
"name": "field7",
"store": true,
"type": "text"
}
]
}
}
}
}
},
"field8": {
"dynamic": false,
"enabled": true,
"fields": [
{
"analyzer": "en",
"docvalues": true,
"include_in_all": true,
"include_term_vectors": true,
"index": true,
"name": "field8",
"store": true,
"type": "text"
}
]
}
}
},
"field9": {
"dynamic": false,
"enabled": true,
"fields": [
{
"analyzer": "keyword",
"index": true,
"name": "field9",
"store": true,
"type": "text"
}
]
}
}
}
}
},
"store": {
"indexType": "scorch"
}
},
"sourceParams": {}
}
query tried:
SELECT meta(p).id
FROM `books` as p
WHERE SEARCH(p,{"query": {
"conjuncts": [
{
"disjuncts": [
{
"field": "field9",
"match": "a"
},
{
"field": "field9",
"match": "b"
}
]
},
{
"disjuncts": [
{
"field": "field2.field5.field6.field7",
"match": "c0"
},
{
"field": "field2.field5.field6.field7",
"match": "c8"
}
]
}
]
},
"size": 2,
"from": 0,
"sort": [
"field2.field8"
]});
- This gives No index available error although given query works on search curl. Please check and let me know my mistake here.
- Also, i defined analyzer for field9 as keyword (which means exact match) but it also works in wildcard and prefix type queries as well. Please correct my understanding.
- N1QL flex query used as :
select META().id from books
USE INDEX (books_one USING FTS)
where _class = ‘com.org.One’
and field2.field3 > 1514158647000 and field2.field3 < 1714158647000
This is not picking the search index (but picking GSI index) using explain button query UI.
- In raw query, how to add constraint for _class = ‘com.org.One’ because _class is root type while defining the index. I am unable to find how to put this in my constraint of raw query.
Thanks
Nitesh