Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@markharwood
Last active August 26, 2021 08:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save markharwood/da3bdb5312e76ed946976e3d98d3b2b8 to your computer and use it in GitHub Desktop.
Save markharwood/da3bdb5312e76ed946976e3d98d3b2b8 to your computer and use it in GitHub Desktop.
Elasticsearch term-level matching support matrix
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLUPPER*\"}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"s.text\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLLOWER*\"}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"s.text\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLUPPER*\"}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"s.text_with_index_prefixes\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLLOWER*\"}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "FP"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"s.text_with_index_prefixes\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"o.flattened\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*ALLUPPER.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"o.flattened\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*ALLLOWER.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"*llupper\", \"default_field\": \"o.flattened\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*allupper.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\"}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_wildcard", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"*lllower\", \"default_field\": \"o.flattened\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.10.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*alllower.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"s.text\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"s.text\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"s.text_with_index_prefixes\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"s.text_with_index_prefixes\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*ALLUPPER.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*ALLLOWER.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*allupper.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\"}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*alllower.*/\", \"default_field\": \"o.flattened\"}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "scripted_field", "query": "{\"regexp\": {\"scripted_field\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "scripted_field", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"scripted_field\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "scripted_field", "query": "{\"regexp\": {\"scripted_field\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "scripted_field", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"scripted_field\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "scripted_field", "query": "{\"regexp\": {\"scripted_field\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "scripted_field", "query": "{\"query_string\": {\"query\": \"*llupper\", \"default_field\": \"scripted_field\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "regexp", "fieldType": "scripted_field", "query": "{\"regexp\": {\"scripted_field\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.14.0", "queryType": "query_string_wildcard", "fieldType": "scripted_field", "query": "{\"query_string\": {\"query\": \"*lllower\", \"default_field\": \"scripted_field\", \"analyze_wildcard\": false}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"ALLUPPER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"ALLUPPER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLUPPER*\"}}}", "result": "FP"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"ALLUPPE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"ALLUPPE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_wildcard", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"s.text\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"/.*ALLUPPER.*/\", \"default_field\": \"s.text\"}}", "result": "FP"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"ALLLOWER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"ALLLOWER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLLOWER*\"}}}", "result": "FP"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"ALLLOWE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"ALLLOWE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_wildcard", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"s.text\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "text", "query": "{\"query_string\": {\"query\": \"/.*ALLLOWER.*/\", \"default_field\": \"s.text\"}}", "result": "FP"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"allupper\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"allupper\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"alluppe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"alluppe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"alllower\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text", "query": "{\"term\": {\"s.text\": {\"value\": \"alllower\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text", "query": "{\"wildcard\": {\"s.text\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"alllowe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text", "query": "{\"prefix\": {\"s.text\": {\"value\": \"alllowe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text", "query": "{\"regexp\": {\"s.text\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLUPPER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLUPPER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLUPPER*\"}}}", "result": "FP"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLUPPE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLUPPE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"s.text_with_index_prefixes\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"/.*ALLUPPER.*/\", \"default_field\": \"s.text_with_index_prefixes\"}}", "result": "FP"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLLOWER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLLOWER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLLOWER*\"}}}", "result": "FP"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLLOWE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"ALLLOWE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"*LLLOWER\", \"default_field\": \"s.text_with_index_prefixes\", \"analyze_wildcard\": false}}", "result": "FP"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "text_with_index_prefixes", "query": "{\"query_string\": {\"query\": \"/.*ALLLOWER.*/\", \"default_field\": \"s.text_with_index_prefixes\"}}", "result": "FP"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"allupper\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"allupper\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"alluppe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"alluppe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"alllower\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "text_with_index_prefixes", "query": "{\"term\": {\"s.text_with_index_prefixes\": {\"value\": \"alllower\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "text_with_index_prefixes", "query": "{\"wildcard\": {\"s.text_with_index_prefixes\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"alllowe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "text_with_index_prefixes", "query": "{\"prefix\": {\"s.text_with_index_prefixes\": {\"value\": \"alllowe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "text_with_index_prefixes", "query": "{\"regexp\": {\"s.text_with_index_prefixes\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"ALLUPPER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"ALLUPPER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"ALLUPPE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"ALLUPPE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"ALLLOWER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"ALLLOWER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"ALLLOWE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"ALLLOWE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"allupper\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"allupper\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"alluppe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"alluppe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"alllower\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "normalized_keyword", "query": "{\"term\": {\"s.normalized_keyword\": {\"value\": \"alllower\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "normalized_keyword", "query": "{\"wildcard\": {\"s.normalized_keyword\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"alllowe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "normalized_keyword", "query": "{\"prefix\": {\"s.normalized_keyword\": {\"value\": \"alllowe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "normalized_keyword", "query": "{\"regexp\": {\"s.normalized_keyword\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"ALLUPPER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"ALLUPPER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"ALLUPPE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"ALLUPPE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"ALLLOWER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"ALLLOWER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"ALLLOWE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"ALLLOWE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"allupper\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"allupper\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"alluppe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"alluppe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"alllower\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "keyword", "query": "{\"term\": {\"s.keyword\": {\"value\": \"alllower\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "keyword", "query": "{\"wildcard\": {\"s.keyword\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"alllowe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "keyword", "query": "{\"prefix\": {\"s.keyword\": {\"value\": \"alllowe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "keyword", "query": "{\"regexp\": {\"s.keyword\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"ALLUPPER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"ALLUPPER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"ALLUPPE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"ALLUPPE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_wildcard", "fieldType": "wildcard", "query": "{\"query_string\": {\"query\": \"*LLUPPER\", \"default_field\": \"s.wildcard\", \"analyze_wildcard\": false}}", "result": "FN"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "wildcard", "query": "{\"query_string\": {\"query\": \"/.*ALLUPPER.*/\", \"default_field\": \"s.wildcard\"}}", "result": "FN"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"ALLLOWER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"ALLLOWER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"ALLLOWE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"ALLLOWE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"allupper\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"allupper\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"alluppe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"alluppe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"alllower\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "wildcard", "query": "{\"term\": {\"s.wildcard\": {\"value\": \"alllower\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "wildcard", "query": "{\"wildcard\": {\"s.wildcard\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"alllowe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "wildcard", "query": "{\"prefix\": {\"s.wildcard\": {\"value\": \"alllowe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "wildcard", "query": "{\"regexp\": {\"s.wildcard\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_wildcard", "fieldType": "wildcard", "query": "{\"query_string\": {\"query\": \"*lllower\", \"default_field\": \"s.wildcard\", \"analyze_wildcard\": false}}", "result": "FN"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "wildcard", "query": "{\"query_string\": {\"query\": \"/.*alllower.*/\", \"default_field\": \"s.wildcard\"}}", "result": "FN"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"ALLUPPER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"ALLUPPER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLUPPER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"ALLUPPE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"ALLUPPE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLUPPE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*ALLUPPER.*/\", \"default_field\": \"o.flattened\"}}", "result": "FN"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"ALLLOWER\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"ALLLOWER\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*ALLLOWER*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"ALLLOWE\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"ALLLOWE\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*ALLLOWE.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"allupper\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"allupper\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*allupper*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"alluppe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"alluppe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alluppe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"alllower\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "term", "fieldType": "flattened", "query": "{\"term\": {\"o.flattened\": {\"value\": \"alllower\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "wildcard", "fieldType": "flattened", "query": "{\"wildcard\": {\"o.flattened\": {\"value\": \"*alllower*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"alllowe\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "prefix", "fieldType": "flattened", "query": "{\"prefix\": {\"o.flattened\": {\"value\": \"alllowe\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\"}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\", \"case_insensitive\": true}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "regexp", "fieldType": "flattened", "query": "{\"regexp\": {\"o.flattened\": {\"value\": \".*alllowe.*\", \"case_insensitive\": false}}}", "result": "unsupported"}
{"version": "7.9.0", "queryType": "query_string_regex", "fieldType": "flattened", "query": "{\"query_string\": {\"query\": \"/.*alllower.*/\", \"default_field\": \"o.flattened\"}}", "result": "FN"}
This Gist contains the output of multiple tests for the matching behaviour of elasticsearch across multiple:
1) elasticsearch versions
2) field mapping types
3) term-level query types (term/prefix/wildcard/terms/regexp)
4) query values
5) doc values
6) query case sensitivity settings
Elasticsearch hasn't always got this right, so for each test we document the output of the combination of all the above
as either:
a) TP - a correct match (true positive)
b) TN - a correct non-match (true negative)
c) FN - an incorrect non-match (false negative)
d) FP - an incorrect match (false positive)
e) unsupported - the query errors because the field does not support the query type
A high level summary is:
* I found no false negatives
* <= 7.10 had false positives on wildcard queries
* flattened field does not support several query types
* To this day (7.14 being current) we have inconsistencies on normalized keyword fields which messes with query term case
(unlike all other field types which don't). We live with this behaviour because changing it would probably break a lot of
existing systems and the inconsistency is documented here: https://www.elastic.co/guide/en/elasticsearch/reference/current/term-level-queries.html
* The query string parser requests normalizedWildcardQueries which was not implemented by Scripted keyword fields. Fixed this.
# Indexes the test result files held in a directory into elasticsearch for search and analysis
import os
from elasticsearch import helpers
from elasticsearch.client import Elasticsearch
import json
indexName = "query_support_matrix"
resultsDir = "/Users/Mark/Downloads/EsVersions/supportMatrix"
es = Elasticsearch()
version = es.info()["version"]["number"]
majorVersion = int(version.split(".")[0])
def create_index():
indexSettings = {
"settings": {
"index.number_of_replicas": 0,
"index.number_of_shards": 1,
},
"mappings": {
}
}
mapping = {
"properties": {
"version": { "type": "keyword"},
"queryType": {"type": "keyword"},
"fieldType": {"type": "keyword"},
"query": {"type": "text", "fields":{"keyword":{"type":"keyword"}}},
"result": {"type": "keyword"}
}
}
if majorVersion >= 7:
indexSettings["mappings"] = mapping
else:
indexSettings["mappings"] = {
"_doc": mapping
}
es.indices.create(index=indexName, body=indexSettings)
if es.indices.exists(index=indexName):
es.indices.delete(index=indexName)
create_index()
def generate_actions():
numItems = 0
for file in os.listdir(resultsDir):
if file.endswith('.jsonl'):
fullpath = (os.path.join(resultsDir, file))
print(fullpath)
with open(fullpath, "r") as docsFile:
for fullDoc in docsFile:
numItems+=1
data = json.loads(fullDoc)
action = {
"_index": indexName,
'_op_type': 'index',
"_source": data
}
if majorVersion < 7:
action["_type"] = "_doc"
yield action
if numItems % 1000 == 0:
print(numItems)
try:
helpers.bulk(es, generate_actions(),
index=indexName,
chunk_size=500)
except Exception as e:
print("Error!", e)
import json
from elasticsearch.client import Elasticsearch
outputDirectory = "/Users/Mark/Downloads/EsVersions/supportMatrix/"
es = Elasticsearch()
version = es.info()["version"]["number"]
majorVersion = int(version.split(".")[0])
minorVersion = int(version.split(".")[1])
indexName = "test"
es.indices.delete(index=indexName, ignore=404)
outputPassFile = outputDirectory + version + "_pass.jsonl"
outputFailFile = outputDirectory + version + "_fail.jsonl"
indexSettings = {
"settings": {
"analysis": {
"normalizer": {
"my_normalizer": {
"type": "custom",
"filter": ["lowercase"]
}
}
}
},
"mappings": {
"properties": {
"o":{
"type":"flattened"
},
"s": {
"type": "text",
"fields": {
"text": {
"type": "text"
},
"text_with_index_prefixes": {
"type": "text",
"index_prefixes": {
"min_chars" : 1,
"max_chars" : 10
}
},
"normalized_keyword": {
"type": "keyword",
"normalizer": "my_normalizer"
},
"keyword": {
"type": "keyword"
},
"wildcard": {
"type": "wildcard"
}
}
}
}
}
}
if majorVersion >7 or (majorVersion == 7 and minorVersion >=11):
indexSettings["mappings"]["runtime"] = {
"scripted_field": {
"type": "keyword",
"script": {
"source": "for (v in doc['s.keyword']) {emit(v);}"
}
}
}
es.indices.create(index=indexName, body=indexSettings)
es.index(index=indexName, doc_type='_doc', body={"s": ["alllower", "ALLUPPER"], "o":{"flattened":["alllower", "ALLUPPER"]}})
es.indices.refresh()
cases=["u", "l"]
fields = [{"name":"s.text", "lowerCasedInIndex":True},
{"name":"s.text_with_index_prefixes", "lowerCasedInIndex":True},
{"name":"s.normalized_keyword", "lowerCasedInIndex":True, "lowerCasesQueryTerms":True},
{"name":"s.keyword", "lowerCasedInIndex":False},
{"name":"s.wildcard", "lowerCasedInIndex":False},
{"name":"o.flattened", "lowerCasedInIndex":False}
]
if "runtime" in indexSettings["mappings"]:
fields.append({"name": "scripted_field", "lowerCasedInIndex":False})
def getTestResult(results, field, queryStringCase, docStringCase, caseInsensitiveQuery, queryStringLowerCased):
result = "TP"
numMatched = results["hits"]["total"]["value"]
indexStringCase = "u" if docStringCase is "u" and field["lowerCasedInIndex"] is False else "l"
if queryStringLowerCased or ("lowerCasesQueryTerms" in field and field["lowerCasesQueryTerms"] is True):
# Query parser overrode the user input
queryStringCase = "l"
if queryStringCase is indexStringCase:
# case insensitivity options are academic - query and index are aligned anyway so should have matched
if numMatched == 0:
result = "FN"
else:
if numMatched == 1:
result = "TP" if caseInsensitiveQuery else "FP"
else:
result = "FN" if caseInsensitiveQuery else "TN"
return result
def runTermQuery(pf, ff):
global queryType, docString, qString, q, results, isOk
queryType = "term" # ========================
docString = "ALLUPPER" if docStringCase is "u" else "ALLLOWER"
qString = docString.lower() if queryStringCase is "l" else docString
q = {
"term": {
field["name"]: {
"value": qString
}
}
}
runQuery(pf,ff, q, queryType, False, False)
q[queryType][field["name"]]["case_insensitive"] = True
runQuery(pf,ff, q, queryType, True, False)
q[queryType][field["name"]]["case_insensitive"] = False
runQuery(pf,ff, q, queryType, False, False)
def runWildcardQuery(pf, ff):
global queryType, docString, qString, q, isOk, results, e
queryType = "wildcard" # ========================
docString = "ALLUPPER" if docStringCase is "u" else "ALLLOWER"
qString = docString.lower() if queryStringCase is "l" else docString
q = {
"wildcard": {
field["name"]: {
"value":"*" + qString + "*"
}
}
}
runQuery(pf,ff, q, queryType, False, False)
q[queryType][field["name"]]["case_insensitive"] = True
runQuery(pf,ff, q, queryType, True, False)
q[queryType][field["name"]]["case_insensitive"] = False
runQuery(pf,ff, q, queryType, False, False)
def runPrefixQuery(pf, ff):
global queryType, docString, qString, q, isOk, results, e
queryType = "prefix" # ========================
docString = "ALLUPPE" if docStringCase is "u" else "ALLLOWE"
qString = docString.lower() if queryStringCase is "l" else docString
q = {
"prefix": {
field["name"]: {
"value": qString
}
}
}
runQuery(pf,ff, q, queryType, False, False)
q[queryType][field["name"]]["case_insensitive"] = True
runQuery(pf,ff, q, queryType, True, False)
q[queryType][field["name"]]["case_insensitive"] = False
runQuery(pf,ff, q, queryType, False, False)
def runRegexpQuery(pf, ff):
global queryType, docString, qString, q, isOk, results, e
queryType = "regexp" # ========================
docString = "ALLUPPE" if docStringCase is "u" else "ALLLOWE"
qString = docString.lower() if queryStringCase is "l" else docString
q = {
"regexp": {
field["name"]: {
"value": ".*" + qString + ".*"
}
}
}
runQuery(pf,ff, q, queryType, False, False)
q[queryType][field["name"]]["case_insensitive"] = True
runQuery(pf,ff, q, queryType, True, False)
q[queryType][field["name"]]["case_insensitive"] = False
runQuery(pf,ff, q, queryType, False, False)
def runQuery(pf,ff, q, queryType, caseInsensitiveQuery, queryStringLowerCased):
global isOk, results, e
isOk = "n/a"
try:
qBody = {
"query": q
}
results = es.search(body=qBody, index=indexName)
isOk = getTestResult(results, field, queryStringCase, docStringCase, caseInsensitiveQuery, queryStringLowerCased)
except Exception as e:
# isOk = "error: "+str(e)
isOk = "unsupported" # (field does not support query)
unDottedFieldName = field["name"].split(".")[1] if "." in field["name"] else field["name"]
doc = {
"version": version,
"queryType": queryType,
"fieldType": unDottedFieldName,
"query": json.dumps(q),
"result": isOk
}
if doc["result"] in ["TP", "TN"]:
pf.write(json.dumps(doc) + '\n')
else:
ff.write(json.dumps(doc) + '\n')
def runTermsQuery(pf, ff):
global queryType, docString, qString, q, results, isOk
queryType = "terms" # ========================
docString = "ALLUPPER" if docStringCase is "u" else "ALLLOWER"
qString = docString.lower() if queryStringCase is "l" else docString
values = [qString, "DOESNOTEXIST"]
q = {
"terms": {
field["name"]: values
}
}
runQuery(pf,ff, q, queryType, False, False)
def runQueryStringQueries(pf, ff):
global field, queryType, docString, qString, q, results, isOk
docString = "ALLUPPER" if docStringCase is "u" else "ALLLOWER"
qString = docString.lower() if queryStringCase is "l" else docString
# unanalyzed prefix
q= {"query_string": {
"query": qString[:-1]+"*",
"default_field": field["name"],
"analyze_wildcard" : False
}}
# Because the default field name is provided query will be analyzed (despite above "analyze_wildcard:False" setting choice)
# runQuery(pf,ff, q, "query_string_prefix", False, False)
runQuery(pf,ff, q, "query_string_prefix", False, field["lowerCasedInIndex"])
# analyzed prefix
if field["lowerCasedInIndex"]:
q= {"query_string": {
"query": qString[:-1]+"*",
"default_field": field["name"],
"analyze_wildcard" : True
}}
runQuery(pf,ff, q, "query_string_prefix", False, True)
# unanalyzed wildcard
q= {"query_string": {
"query": "*"+qString[1:],
"default_field": field["name"],
"analyze_wildcard" : False
}}
runQuery(pf,ff, q, "query_string_wildcard", False, False)
# analyzed wildcard
if field["lowerCasedInIndex"]:
q= {"query_string": {
"query": "*"+qString[1:],
"default_field": field["name"],
"analyze_wildcard" : True
}}
runQuery(pf,ff, q, "query_string_wildcard", False, True)
# regex analyzed
q= {"query_string": {
"query": "/.*"+qString+".*/",
"default_field": field["name"]
}}
runQuery(pf,ff, q, "query_string_regex", False, False)
def runSimpleQueryStringQueries(pf, ff):
global field, queryType, docString, qString, q, results, isOk
docString = "ALLUPPER" if docStringCase is "u" else "ALLLOWER"
qString = docString.lower() if queryStringCase is "l" else docString
# unanalyzed prefix
q= {"simple_query_string": {
"query": qString[:-1]+"*",
"fields": [field["name"]],
"analyze_wildcard" : False
}}
# runQuery(pf,ff, q, "simple_query_string_prefix", False, False)
# Because the default field name is provided query will be analyzed (despite above "analyzed" setting choice)
# runQuery(pf,ff, q, "query_string_prefix", False, False)
runQuery(pf,ff, q, "query_string_prefix", False, field["lowerCasedInIndex"])
# analyzed prefix
if field["lowerCasedInIndex"]:
q= {"simple_query_string": {
"query": qString[:-1]+"*",
"fields": [field["name"]],
"analyze_wildcard" : True
}}
runQuery(pf,ff, q, "simple_query_string_prefix", False, True)
def runMatchQueries(pf, ff):
global field, queryType, docString, qString, q, results, isOk
docString = "ALLUPPER" if docStringCase is "u" else "ALLLOWER"
qString = docString.lower() if queryStringCase is "l" else docString
# match query
q= {"match": {
field["name"]:{
"query": qString
}
}}
runQuery(pf,ff, q, "match", False, field["lowerCasedInIndex"])
# match_bool_prefix query
q= {"match_bool_prefix": {
field["name"]:{
"query": qString
}
}}
runQuery(pf,ff, q, "match_bool_prefix", False, field["lowerCasedInIndex"])
with open(outputPassFile, 'w') as pf:
with open(outputFailFile, 'w') as ff:
for field in fields:
for queryStringCase in cases:
for docStringCase in cases:
runTermQuery(pf, ff)
runWildcardQuery(pf, ff)
runPrefixQuery(pf, ff)
runRegexpQuery(pf, ff)
runTermsQuery(pf, ff)
runQueryStringQueries(pf, ff)
runSimpleQueryStringQueries(pf, ff)
runMatchQueries(pf, ff)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment