cube-js/cube

Time range does not work with AWS ES (open distro)

オープン

#3,129 opened on 2021/07/19

 (3 件のコメント) (0 件のリアクション) (0 人の担当者)Rust (1,965 件のフォーク)batch import
driver:elasticsearchhelp wanted

Repository metrics

Stars
 (19,563 個のスター)
PR merge metrics
 (PR metrics pending)

説明

Describe the bug Time range does not work with AWS ES

To Reproduce Steps to reproduce the behavior:

  1. Create a valid cube schema connected to AWS ES 7.7
  2. Build a query with time range set to anything other than all time.
  3. Run the query
  4. See error

Expected behavior Generate SQL should use a date function compatible with AWS ES as documented https://opendistro.github.io/for-elasticsearch-docs/docs/sql/functions/

Currently it uses DATE_TRUNC which is not supported by open distro ES.

Screenshots

Error: "{\n \"error\": {\n \"reason\": \"Invalid SQL query\",\n \"details\": \"Failed to parse query due to offending symbol [:] at: 'SELECT\\n DATE_TRUNC('day', d_n_s_activity_red.timestamp:' <--- HERE... More details: Expecting tokens in {'SELECT', '('}\",\n \"type\": \"SyntaxAnalysisException\"\n },\n \"status\": 400\n}"

Version: v0.27.53 AWS ES 7.7

コントリビューターガイド