Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Identify and support push down for common functions #1847

Closed
19 of 20 tasks
zanmato1984 opened this issue Apr 29, 2021 · 7 comments
Closed
19 of 20 tasks

Identify and support push down for common functions #1847

zanmato1984 opened this issue Apr 29, 2021 · 7 comments
Assignees
Labels
component/expression type/new-feature Issue or PR for new feature

Comments

@zanmato1984
Copy link
Contributor

zanmato1984 commented Apr 29, 2021

In sprint 4, we plan to support:

Sprint 3 done:

List by PM: https://docs.google.com/spreadsheets/d/1FUoFEhXXVFskkBLtTfGI0XqlgveW_IdFTOgvYD7PNcA/edit#gid=508440363

@zanmato1984 zanmato1984 created this issue from a note in Compute Scrum (Sprint 3) Apr 29, 2021
@zanmato1984 zanmato1984 self-assigned this Apr 29, 2021
@zanmato1984 zanmato1984 added component/expression type/new-feature Issue or PR for new feature labels Apr 29, 2021
@leiysky
Copy link
Contributor

leiysky commented May 6, 2021

Here's a list of expreesions supporte by TiKV but not supported by TiFlash:

  • Op functions: LeftShift, RightShift, LogicXor
  • Comparison funcitons: IsTrueWithNull, IsTrueWithoutNull, IsFalsity, NullEQ
  • Math functions: Ceil, Ceiling, Floor, Sqrt, Sign, Ln, Log, Log2, Log10, Exp, Pow, Radians, Degrees, Conv, CRC32
  • Control functions: Coalesce
  • String functions: Length, BitLength, Concat, ConcatWS, Replace, ASCII, Hex, Reverse, LTrim, RTrim, Strcmp, Space, Elt, Field
  • JSON functions: JSONType, JSONExtract, JSONObject, JSONArray, JSONMerge, JSONSet, JSONInsert, JSONRemove, JSONLength
  • Datetime functions: FromDays, DayOfYear, DayOfMonth, Year, Month, PeriodAdd, PeriodDiff
  • Cast functions: cast any as duration, cast duration as any

I suggest we can implement all Op funcitons and Comparison functions first, since they are common and well defined.

@leiysky
Copy link
Contributor

leiysky commented May 6, 2021

Comparison functions: #1863

@leiysky
Copy link
Contributor

leiysky commented May 11, 2021

Enum expressions: #1880

@zanmato1984
Copy link
Contributor Author

zanmato1984 commented May 13, 2021

group_concat with distinct support is required by some random customer.

Clickhouse has groupArray and groupArrayUniq as similar function, we can leverage them. See ClickHouse/ClickHouse#13195.

Tracking in #1908

@fzhedu
Copy link
Contributor

fzhedu commented May 19, 2021

str_to_date needed from customers

@lilinghai
Copy link

Could we support the mod function push down? The CH-benCHmark contains a lot of queries that contains mod function.
https://db.in.tum.de/research/projects/CHbenCHmark/?lang=en

@leiysky
Copy link
Contributor

leiysky commented Jun 30, 2021

From PingCAP Metabase:

@zanmato1984 zanmato1984 closed this as not planned Won't fix, can't repro, duplicate, stale Jan 18, 2024
Compute Scrum automation moved this from Sprint 4 to Done Jan 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/expression type/new-feature Issue or PR for new feature
Projects
Compute Scrum
  
Done
Development

No branches or pull requests

4 participants