This is an automated email from the ASF dual-hosted git repository.
morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-doris.git
The following commit(s) were added to refs/heads/master by this push:
new 7b2762b [Doris On ES][Bug-Fix] Can not pushdown limit when some
predicate can not processed by ES (#4768)
7b2762b is described below
commit 7b2762b1b12ca971fd74b1abb9b2ee1489aa4098
Author: Yunfeng,Wu <[email protected]>
AuthorDate: Wed Oct 21 12:10:55 2020 +0800
[Doris On ES][Bug-Fix] Can not pushdown limit when some predicate can not
processed by ES (#4768)
Can not pushdown limit when some predicate not processed by ES, fixed: #4761
---
be/src/exec/es_http_scan_node.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/be/src/exec/es_http_scan_node.cpp
b/be/src/exec/es_http_scan_node.cpp
index e86202a..190b3c4 100644
--- a/be/src/exec/es_http_scan_node.cpp
+++ b/be/src/exec/es_http_scan_node.cpp
@@ -440,7 +440,8 @@ void EsHttpScanNode::scanner_worker(int start_idx, int
length, std::promise<Stat
properties[ESScanReader::KEY_BATCH_SIZE] =
std::to_string(_runtime_state->batch_size());
properties[ESScanReader::KEY_HOST_PORT] =
get_host_port(es_scan_range.es_hosts);
// push down limit to Elasticsearch
- if (limit() != -1 && limit() <= _runtime_state->batch_size()) {
+ // if predicate in _conjunct_ctxs can not be processed by Elasticsearch,
we can not push down limit operator to Elasticsearch
+ if (limit() != -1 && limit() <= _runtime_state->batch_size() &&
_conjunct_ctxs.empty()) {
properties[ESScanReader::KEY_TERMINATE_AFTER] =
std::to_string(limit());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]