{"action":"created","comment":{"url":"https://api.github.com/repos/elastic/elasticsearch/pulls/comments/39054652","id":39054652,"diff_hunk":"@@ -373,4 +434,196 @@ public void doXContent(XContentBuilder builder, Params params) throws IOExceptio\n     public String getWriteableName() {\n         return NAME;\n     }\n+\n+    @Override\n+    protected Query doToQuery(QueryShardContext context) throws IOException {\n+        MultiMatchQuery multiMatchQuery = new MultiMatchQuery(context);\n+        if (analyzer != null) {\n+            if (context.analysisService().analyzer(analyzer) == null) {\n+                throw new QueryShardException(context, \"[\" + NAME + \"] analyzer [\" + analyzer + \"] not found\");\n+            }\n+            multiMatchQuery.setAnalyzer(analyzer);\n+        }\n+        if (slop != null) {\n+            multiMatchQuery.setPhraseSlop(slop);\n+        }\n+        if (fuzziness != null) {\n+            multiMatchQuery.setFuzziness(fuzziness);\n+        }\n+        if (prefixLength != null) {\n+            multiMatchQuery.setFuzzyPrefixLength(prefixLength);\n+        }\n+        if (maxExpansions != null) {\n+            multiMatchQuery.setMaxExpansions(maxExpansions);\n+        }\n+        if (operator != null) {\n+            multiMatchQuery.setOccur(operator.toBooleanClauseOccur());\n+        }\n+        if (fuzzyRewrite != null) {\n+            multiMatchQuery.setFuzzyRewriteMethod(QueryParsers.parseRewriteMethod(context.parseFieldMatcher(), fuzzyRewrite, null));\n+        }\n+        if (tieBreaker != null) {\n+            multiMatchQuery.setTieBreaker(tieBreaker);\n+        }\n+        if (cutoffFrequency != null) {\n+            multiMatchQuery.setCommonTermsCutoff(cutoffFrequency);\n+        }\n+        if (lenient != null) {\n+            multiMatchQuery.setLenient(lenient);\n+        }\n+        if (zeroTermsQuery != null) {\n+            multiMatchQuery.setZeroTermsQuery(zeroTermsQuery);\n+        }\n+\n+        if (type == null) {\n+            type = Type.BEST_FIELDS;\n+        }\n+        if (useDisMax != null) { // backwards foobar\n+            boolean typeUsesDismax = type.tieBreaker() != 1.0f;\n+            if (typeUsesDismax != useDisMax) {\n+                if (useDisMax && tieBreaker == null) {\n+                    multiMatchQuery.setTieBreaker(0.0f);\n+                } else {\n+                    multiMatchQuery.setTieBreaker(1.0f);\n+                }\n+            }\n+        }\n+\n+        Map<String, Float> newFieldsBoosts = handleFieldsMatchPattern(context.mapperService(), fieldsBoosts);\n+\n+        Query query = multiMatchQuery.parse(type, newFieldsBoosts, value, minimumShouldMatch);\n+        if (query == null) {\n+            return null;\n+        }\n+        return query;\n+    }\n+\n+    @Override\n+    protected void setFinalBoost(Query query) {\n+        query.setBoost(boost * query.getBoost());\n+    }\n+\n+    private static Map<String, Float> handleFieldsMatchPattern(MapperService mapperService, Map<String, Float> fieldsBoosts) {\n+        Map<String, Float> newFieldsBoosts = new HashMap<>();\n+        for (Map.Entry<String, Float> fieldBoost : fieldsBoosts.entrySet()) {\n+            String fField = fieldBoost.getKey();\n+            Float fBoost = fieldBoost.getValue();\n+            if (Regex.isSimpleMatchPattern(fField)) {\n+                for (String field : mapperService.simpleMatchToIndexNames(fField)) {\n+                    newFieldsBoosts.put(field, fBoost);\n+                }\n+            } else {\n+                newFieldsBoosts.put(fField, fBoost);\n+            }\n+        }\n+        return newFieldsBoosts;\n+    }\n+\n+    @Override\n+    public QueryValidationException validate() {\n+        QueryValidationException validationException = null;\n+        if (value == null) {\n+            validationException = addValidationError(\"no text specified for multi_match query.\", validationException);\n+        }\n+        if (fieldsBoosts == null || fieldsBoosts.isEmpty()) {\n+            validationException = addValidationError(\"no fields specified for multi_match query.\", validationException);\n+        }\n+        return validationException;\n+    }\n+\n+    @Override\n+    protected MultiMatchQueryBuilder doReadFrom(StreamInput in) throws IOException {\n+        MultiMatchQueryBuilder multiMatchQuery = new MultiMatchQueryBuilder(in.readGenericValue(),\n+                (Map<String, Float>) in.readGenericValue());\n+        if (in.readBoolean()) {\n+            multiMatchQuery.type = Type.valueOf(in.readString());\n+        }\n+        if (in.readBoolean()) {\n+            multiMatchQuery.operator = Operator.readOperatorFrom(in);\n+        }\n+        multiMatchQuery.analyzer = in.readOptionalString();\n+        multiMatchQuery.slop = in.readOptionalVInt();\n+        if (in.readBoolean()) {\n+            multiMatchQuery.fuzziness = Fuzziness.readFuzzinessFrom(in);\n+        }\n+        multiMatchQuery.prefixLength = in.readOptionalVInt();\n+        multiMatchQuery.maxExpansions = in.readOptionalVInt();\n+        multiMatchQuery.minimumShouldMatch = in.readOptionalString();\n+        multiMatchQuery.fuzzyRewrite = in.readOptionalString();\n+        multiMatchQuery.useDisMax = in.readOptionalBoolean();\n+        multiMatchQuery.tieBreaker = in.readOptionalFloat();\n+        multiMatchQuery.lenient = in.readOptionalBoolean();\n+        multiMatchQuery.cutoffFrequency = in.readOptionalFloat();\n+        if (in.readBoolean()) {\n+            multiMatchQuery.zeroTermsQuery = ZeroTermsQuery.valueOf(in.readString());\n+        }\n+        return multiMatchQuery;\n+    }\n+\n+    @Override\n+    protected void doWriteTo(StreamOutput out) throws IOException {\n+        out.writeGenericValue(value);\n+        out.writeGenericValue(fieldsBoosts);\n+        if (type != null) {\n+            out.writeBoolean(true);\n+            out.writeString(type.name().toUpperCase(Locale.ROOT));\n+        } else {\n+            out.writeBoolean(false);\n+        }\n+        if (operator != null) {\n+            out.writeBoolean(true);\n+            operator.writeTo(out);\n+        } else {\n+            out.writeBoolean(false);\n+        }\n+        out.writeOptionalString(analyzer);\n+        out.writeOptionalVInt(slop);\n+        if (fuzziness != null) {\n+            out.writeBoolean(true);\n+            fuzziness.writeTo(out);\n+        } else {\n+            out.writeBoolean(false);\n+        }\n+        out.writeOptionalVInt(prefixLength);\n+        out.writeOptionalVInt(maxExpansions);\n+        out.writeOptionalString(minimumShouldMatch);\n+        out.writeOptionalString(fuzzyRewrite);\n+        out.writeOptionalBoolean(useDisMax);\n+        out.writeOptionalFloat(tieBreaker);\n+        out.writeOptionalBoolean(lenient);\n+        out.writeOptionalFloat(cutoffFrequency);\n+        if (zeroTermsQuery != null) {","path":"core/src/main/java/org/elasticsearch/index/query/MultiMatchQueryBuilder.java","position":439,"original_position":439,"commit_id":"93f6831d732de28d689fa0444b862be3b56b07ef","original_commit_id":"93f6831d732de28d689fa0444b862be3b56b07ef","user":{"login":"cbuescher","id":10398885,"avatar_url":"https://avatars.githubusercontent.com/u/10398885?v=3","gravatar_id":"","url":"https://api.github.com/users/cbuescher","html_url":"https://github.com/cbuescher","followers_url":"https://api.github.com/users/cbuescher/followers","following_url":"https://api.github.com/users/cbuescher/following{/other_user}","gists_url":"https://api.github.com/users/cbuescher/gists{/gist_id}","starred_url":"https://api.github.com/users/cbuescher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cbuescher/subscriptions","organizations_url":"https://api.github.com/users/cbuescher/orgs","repos_url":"https://api.github.com/users/cbuescher/repos","events_url":"https://api.github.com/users/cbuescher/events{/privacy}","received_events_url":"https://api.github.com/users/cbuescher/received_events","type":"User","site_admin":false},"body":"fyi, I added serialization to the enum I moved to MatchQuery (#13402) maybe we can reuse this.","created_at":"2015-09-09T15:08:21Z","updated_at":"2015-09-09T15:08:21Z","html_url":"https://github.com/elastic/elasticsearch/pull/13405#discussion_r39054652","pull_request_url":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405","_links":{"self":{"href":"https://api.github.com/repos/elastic/elasticsearch/pulls/comments/39054652"},"html":{"href":"https://github.com/elastic/elasticsearch/pull/13405#discussion_r39054652"},"pull_request":{"href":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405"}}},"pull_request":{"url":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405","id":44473971,"html_url":"https://github.com/elastic/elasticsearch/pull/13405","diff_url":"https://github.com/elastic/elasticsearch/pull/13405.diff","patch_url":"https://github.com/elastic/elasticsearch/pull/13405.patch","issue_url":"https://api.github.com/repos/elastic/elasticsearch/issues/13405","number":13405,"state":"open","locked":false,"title":"Refactors MultiMatchQueryBuilder and Parser","user":{"login":"alexksikes","id":43475,"avatar_url":"https://avatars.githubusercontent.com/u/43475?v=3","gravatar_id":"","url":"https://api.github.com/users/alexksikes","html_url":"https://github.com/alexksikes","followers_url":"https://api.github.com/users/alexksikes/followers","following_url":"https://api.github.com/users/alexksikes/following{/other_user}","gists_url":"https://api.github.com/users/alexksikes/gists{/gist_id}","starred_url":"https://api.github.com/users/alexksikes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexksikes/subscriptions","organizations_url":"https://api.github.com/users/alexksikes/orgs","repos_url":"https://api.github.com/users/alexksikes/repos","events_url":"https://api.github.com/users/alexksikes/events{/privacy}","received_events_url":"https://api.github.com/users/alexksikes/received_events","type":"User","site_admin":false},"body":"Relates to #10217\r\n\r\nThis PR is against the query-refactoring branch.","created_at":"2015-09-08T19:40:57Z","updated_at":"2015-09-09T15:08:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":"3537545a16cd2a75f6271a2243ff5d1432cb0da4","assignee":{"login":"cbuescher","id":10398885,"avatar_url":"https://avatars.githubusercontent.com/u/10398885?v=3","gravatar_id":"","url":"https://api.github.com/users/cbuescher","html_url":"https://github.com/cbuescher","followers_url":"https://api.github.com/users/cbuescher/followers","following_url":"https://api.github.com/users/cbuescher/following{/other_user}","gists_url":"https://api.github.com/users/cbuescher/gists{/gist_id}","starred_url":"https://api.github.com/users/cbuescher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cbuescher/subscriptions","organizations_url":"https://api.github.com/users/cbuescher/orgs","repos_url":"https://api.github.com/users/cbuescher/repos","events_url":"https://api.github.com/users/cbuescher/events{/privacy}","received_events_url":"https://api.github.com/users/cbuescher/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405/commits","review_comments_url":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405/comments","review_comment_url":"https://api.github.com/repos/elastic/elasticsearch/pulls/comments{/number}","comments_url":"https://api.github.com/repos/elastic/elasticsearch/issues/13405/comments","statuses_url":"https://api.github.com/repos/elastic/elasticsearch/statuses/93f6831d732de28d689fa0444b862be3b56b07ef","head":{"label":"alexksikes:feature/query-refactoring-multi-match-query","ref":"feature/query-refactoring-multi-match-query","sha":"93f6831d732de28d689fa0444b862be3b56b07ef","user":{"login":"alexksikes","id":43475,"avatar_url":"https://avatars.githubusercontent.com/u/43475?v=3","gravatar_id":"","url":"https://api.github.com/users/alexksikes","html_url":"https://github.com/alexksikes","followers_url":"https://api.github.com/users/alexksikes/followers","following_url":"https://api.github.com/users/alexksikes/following{/other_user}","gists_url":"https://api.github.com/users/alexksikes/gists{/gist_id}","starred_url":"https://api.github.com/users/alexksikes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexksikes/subscriptions","organizations_url":"https://api.github.com/users/alexksikes/orgs","repos_url":"https://api.github.com/users/alexksikes/repos","events_url":"https://api.github.com/users/alexksikes/events{/privacy}","received_events_url":"https://api.github.com/users/alexksikes/received_events","type":"User","site_admin":false},"repo":{"id":15257781,"name":"elasticsearch","full_name":"alexksikes/elasticsearch","owner":{"login":"alexksikes","id":43475,"avatar_url":"https://avatars.githubusercontent.com/u/43475?v=3","gravatar_id":"","url":"https://api.github.com/users/alexksikes","html_url":"https://github.com/alexksikes","followers_url":"https://api.github.com/users/alexksikes/followers","following_url":"https://api.github.com/users/alexksikes/following{/other_user}","gists_url":"https://api.github.com/users/alexksikes/gists{/gist_id}","starred_url":"https://api.github.com/users/alexksikes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexksikes/subscriptions","organizations_url":"https://api.github.com/users/alexksikes/orgs","repos_url":"https://api.github.com/users/alexksikes/repos","events_url":"https://api.github.com/users/alexksikes/events{/privacy}","received_events_url":"https://api.github.com/users/alexksikes/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/alexksikes/elasticsearch","description":"Open Source, Distributed, RESTful Search Engine","fork":true,"url":"https://api.github.com/repos/alexksikes/elasticsearch","forks_url":"https://api.github.com/repos/alexksikes/elasticsearch/forks","keys_url":"https://api.github.com/repos/alexksikes/elasticsearch/keys{/key_id}","collaborators_url":"https://api.github.com/repos/alexksikes/elasticsearch/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/alexksikes/elasticsearch/teams","hooks_url":"https://api.github.com/repos/alexksikes/elasticsearch/hooks","issue_events_url":"https://api.github.com/repos/alexksikes/elasticsearch/issues/events{/number}","events_url":"https://api.github.com/repos/alexksikes/elasticsearch/events","assignees_url":"https://api.github.com/repos/alexksikes/elasticsearch/assignees{/user}","branches_url":"https://api.github.com/repos/alexksikes/elasticsearch/branches{/branch}","tags_url":"https://api.github.com/repos/alexksikes/elasticsearch/tags","blobs_url":"https://api.github.com/repos/alexksikes/elasticsearch/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/alexksikes/elasticsearch/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/alexksikes/elasticsearch/git/refs{/sha}","trees_url":"https://api.github.com/repos/alexksikes/elasticsearch/git/trees{/sha}","statuses_url":"https://api.github.com/repos/alexksikes/elasticsearch/statuses/{sha}","languages_url":"https://api.github.com/repos/alexksikes/elasticsearch/languages","stargazers_url":"https://api.github.com/repos/alexksikes/elasticsearch/stargazers","contributors_url":"https://api.github.com/repos/alexksikes/elasticsearch/contributors","subscribers_url":"https://api.github.com/repos/alexksikes/elasticsearch/subscribers","subscription_url":"https://api.github.com/repos/alexksikes/elasticsearch/subscription","commits_url":"https://api.github.com/repos/alexksikes/elasticsearch/commits{/sha}","git_commits_url":"https://api.github.com/repos/alexksikes/elasticsearch/git/commits{/sha}","comments_url":"https://api.github.com/repos/alexksikes/elasticsearch/comments{/number}","issue_comment_url":"https://api.github.com/repos/alexksikes/elasticsearch/issues/comments{/number}","contents_url":"https://api.github.com/repos/alexksikes/elasticsearch/contents/{+path}","compare_url":"https://api.github.com/repos/alexksikes/elasticsearch/compare/{base}...{head}","merges_url":"https://api.github.com/repos/alexksikes/elasticsearch/merges","archive_url":"https://api.github.com/repos/alexksikes/elasticsearch/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/alexksikes/elasticsearch/downloads","issues_url":"https://api.github.com/repos/alexksikes/elasticsearch/issues{/number}","pulls_url":"https://api.github.com/repos/alexksikes/elasticsearch/pulls{/number}","milestones_url":"https://api.github.com/repos/alexksikes/elasticsearch/milestones{/number}","notifications_url":"https://api.github.com/repos/alexksikes/elasticsearch/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/alexksikes/elasticsearch/labels{/name}","releases_url":"https://api.github.com/repos/alexksikes/elasticsearch/releases{/id}","created_at":"2013-12-17T15:15:49Z","updated_at":"2015-03-10T00:44:52Z","pushed_at":"2015-09-09T12:29:04Z","git_url":"git://github.com/alexksikes/elasticsearch.git","ssh_url":"git@github.com:alexksikes/elasticsearch.git","clone_url":"https://github.com/alexksikes/elasticsearch.git","svn_url":"https://github.com/alexksikes/elasticsearch","homepage":"http://elasticsearch.org","size":134290,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"elastic:feature/query-refactoring","ref":"feature/query-refactoring","sha":"50c43c9328b248cd5357ef90fee57ec9f31772dc","user":{"login":"elastic","id":6764390,"avatar_url":"https://avatars.githubusercontent.com/u/6764390?v=3","gravatar_id":"","url":"https://api.github.com/users/elastic","html_url":"https://github.com/elastic","followers_url":"https://api.github.com/users/elastic/followers","following_url":"https://api.github.com/users/elastic/following{/other_user}","gists_url":"https://api.github.com/users/elastic/gists{/gist_id}","starred_url":"https://api.github.com/users/elastic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elastic/subscriptions","organizations_url":"https://api.github.com/users/elastic/orgs","repos_url":"https://api.github.com/users/elastic/repos","events_url":"https://api.github.com/users/elastic/events{/privacy}","received_events_url":"https://api.github.com/users/elastic/received_events","type":"Organization","site_admin":false},"repo":{"id":507775,"name":"elasticsearch","full_name":"elastic/elasticsearch","owner":{"login":"elastic","id":6764390,"avatar_url":"https://avatars.githubusercontent.com/u/6764390?v=3","gravatar_id":"","url":"https://api.github.com/users/elastic","html_url":"https://github.com/elastic","followers_url":"https://api.github.com/users/elastic/followers","following_url":"https://api.github.com/users/elastic/following{/other_user}","gists_url":"https://api.github.com/users/elastic/gists{/gist_id}","starred_url":"https://api.github.com/users/elastic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elastic/subscriptions","organizations_url":"https://api.github.com/users/elastic/orgs","repos_url":"https://api.github.com/users/elastic/repos","events_url":"https://api.github.com/users/elastic/events{/privacy}","received_events_url":"https://api.github.com/users/elastic/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/elastic/elasticsearch","description":"Open Source, Distributed, RESTful Search Engine","fork":false,"url":"https://api.github.com/repos/elastic/elasticsearch","forks_url":"https://api.github.com/repos/elastic/elasticsearch/forks","keys_url":"https://api.github.com/repos/elastic/elasticsearch/keys{/key_id}","collaborators_url":"https://api.github.com/repos/elastic/elasticsearch/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/elastic/elasticsearch/teams","hooks_url":"https://api.github.com/repos/elastic/elasticsearch/hooks","issue_events_url":"https://api.github.com/repos/elastic/elasticsearch/issues/events{/number}","events_url":"https://api.github.com/repos/elastic/elasticsearch/events","assignees_url":"https://api.github.com/repos/elastic/elasticsearch/assignees{/user}","branches_url":"https://api.github.com/repos/elastic/elasticsearch/branches{/branch}","tags_url":"https://api.github.com/repos/elastic/elasticsearch/tags","blobs_url":"https://api.github.com/repos/elastic/elasticsearch/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/elastic/elasticsearch/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/elastic/elasticsearch/git/refs{/sha}","trees_url":"https://api.github.com/repos/elastic/elasticsearch/git/trees{/sha}","statuses_url":"https://api.github.com/repos/elastic/elasticsearch/statuses/{sha}","languages_url":"https://api.github.com/repos/elastic/elasticsearch/languages","stargazers_url":"https://api.github.com/repos/elastic/elasticsearch/stargazers","contributors_url":"https://api.github.com/repos/elastic/elasticsearch/contributors","subscribers_url":"https://api.github.com/repos/elastic/elasticsearch/subscribers","subscription_url":"https://api.github.com/repos/elastic/elasticsearch/subscription","commits_url":"https://api.github.com/repos/elastic/elasticsearch/commits{/sha}","git_commits_url":"https://api.github.com/repos/elastic/elasticsearch/git/commits{/sha}","comments_url":"https://api.github.com/repos/elastic/elasticsearch/comments{/number}","issue_comment_url":"https://api.github.com/repos/elastic/elasticsearch/issues/comments{/number}","contents_url":"https://api.github.com/repos/elastic/elasticsearch/contents/{+path}","compare_url":"https://api.github.com/repos/elastic/elasticsearch/compare/{base}...{head}","merges_url":"https://api.github.com/repos/elastic/elasticsearch/merges","archive_url":"https://api.github.com/repos/elastic/elasticsearch/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/elastic/elasticsearch/downloads","issues_url":"https://api.github.com/repos/elastic/elasticsearch/issues{/number}","pulls_url":"https://api.github.com/repos/elastic/elasticsearch/pulls{/number}","milestones_url":"https://api.github.com/repos/elastic/elasticsearch/milestones{/number}","notifications_url":"https://api.github.com/repos/elastic/elasticsearch/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/elastic/elasticsearch/labels{/name}","releases_url":"https://api.github.com/repos/elastic/elasticsearch/releases{/id}","created_at":"2010-02-08T13:20:56Z","updated_at":"2015-09-09T13:00:30Z","pushed_at":"2015-09-09T14:58:58Z","git_url":"git://github.com/elastic/elasticsearch.git","ssh_url":"git@github.com:elastic/elasticsearch.git","clone_url":"https://github.com/elastic/elasticsearch.git","svn_url":"https://github.com/elastic/elasticsearch","homepage":"https://www.elastic.co/products/elasticsearch","size":418292,"stargazers_count":12659,"watchers_count":12659,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4085,"mirror_url":null,"open_issues_count":1223,"forks":4085,"open_issues":1223,"watchers":12659,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405"},"html":{"href":"https://github.com/elastic/elasticsearch/pull/13405"},"issue":{"href":"https://api.github.com/repos/elastic/elasticsearch/issues/13405"},"comments":{"href":"https://api.github.com/repos/elastic/elasticsearch/issues/13405/comments"},"review_comments":{"href":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405/comments"},"review_comment":{"href":"https://api.github.com/repos/elastic/elasticsearch/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/elastic/elasticsearch/pulls/13405/commits"},"statuses":{"href":"https://api.github.com/repos/elastic/elasticsearch/statuses/93f6831d732de28d689fa0444b862be3b56b07ef"}}}}