Ruihang Xia
68b231987c
feat: improve Prometheus compliance ( #1022 )
...
* initial impl
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* minor (useless) refactor
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* retrieve metric name
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add time index column to group by columns
filter out NaN in normalize
remove NULL in instant manipulator
accept form data as HTTP params
correct API URL
accept second literal as step param
* happy clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update test result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-02-20 07:29:43 +00:00
shuiyisong
6afd79cab8
feat: support InfluxDB auth protocol ( #1034 )
...
* chore: add http auth influxdb compat
* chore: add test
* chore: minor change
* chore: fix typo
* chore: fix cr
2023-02-20 03:26:19 +00:00
fys
4e88a01638
feat: support influxdb ping and health endpoint ( #1027 )
...
* feat: support influxdb ping and health endpoint
* add some unit tests
* ping and health api no need auth
* cr
2023-02-20 02:31:51 +00:00
Eugene Tolbakov
7787cfdd42
refactor(datatypes): enhance MutableVector methods ( #987 )
...
* refactor(datatypes): enhance MutableVector methods
* refactor(datatypes): address code review issues
* refactor(datatypes): address more code review issues
* refactor(datatypes): fix merge conflicts
* refactor(datatypes): address code review issues
* refactor(datatypes): address more code review issues
* refactor(datatypes): update sql delete with the newly introduced method
2023-02-17 16:16:23 +08:00
dennis zhuang
5ec1a7027b
feat: supports passing user params into coprocessor ( #962 )
...
* feat: make args in coprocessor optional
* feat: supports kwargs for coprocessor as params passed by the users
* feat: supports params for /run-script
* fix: we should rewrite the coprocessor by removing kwargs
* fix: remove println
* fix: compile error after rebasing
* fix: improve http_handler_test
* test: http scripts api with user params
* refactor: tweak all to_owned
2023-02-16 16:11:26 +08:00
Ruihang Xia
a8c2b35ec6
chore: bump rust to nightly-2023-02-14 ( #1019 )
...
* chore: bump rust to nightly-2023-02-14
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* bump statrs to 0.16
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-02-16 13:17:57 +08:00
Ning Sun
cd0d58cb24
fix: correct date/time type format for postgresql ( #1001 )
...
* fix: correct date/time type format for postgresql
* fix: tests for timestamp
* refactor: use Utc datetime for timestamp::to_chrono_datetime
* Update src/servers/Cargo.toml
Co-authored-by: LFC <bayinamine@gmail.com >
---------
Co-authored-by: LFC <bayinamine@gmail.com >
2023-02-15 09:40:16 +00:00
Ruihang Xia
dfe7bfb07f
feat: handle PromQL HTTP API parameters ( #985 )
...
* feat: impl EvalStmt parser
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix compile errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update test result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add integration test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* resolve CR comments
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* impl From<PromqlQuery> for PromQuery
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* move format into with_context
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update test result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* shorthand compound error
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* use rfc3339 error to report float parsing error
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove CompoundError
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-02-15 17:15:44 +08:00
shuiyisong
301656d568
fix: rename schema to db in http param ( #1008 )
...
chore: rename schema to db in http script handler
2023-02-15 15:59:00 +08:00
Xieqijun
63e396e9e9
test: add api and doc http test ( #998 )
...
* test:add api and doc test
* fix:conservation
2023-02-15 11:55:13 +08:00
LFC
9ad6c45913
test: Sqlness tests for distribute mode ( #979 )
...
* test: Sqlness tests for distribute mode
* ci
* fix: resolve PR comments
* fix: resolve PR comments
2023-02-14 10:24:09 +08:00
fys
7fe417e740
fix: an error occurred when requesting the http doc api ( #984 )
2023-02-13 11:17:27 +00:00
Ruihang Xia
83ac6598b6
feat: add start, end and step to promql http api ( #969 )
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-02-10 14:16:16 +08:00
Ning Sun
83d57f9111
fix: setting postgres query context ( #958 )
2023-02-08 16:34:10 +08:00
Ning Sun
c1d32bdf2b
fix: add form data support for http sql api ( #955 )
...
fix: add form data support for http apis
2023-02-07 10:15:39 +00:00
ShenJunkun
afac885c10
refactor: add schema column to the scripts table ( #868 )
2023-02-07 11:07:32 +08:00
Lei, HUANG
5d62e193bd
feat: support multi regions on datanode ( #653 )
...
* wip: fix compile errors
* chore: move splitter to partition crate
* fix: remove useless variants in frontend errors
* chore: move more partition related code to partition manager
* fix: license header
* wip: move WriteSplitter to PartitionRuleManager
* fix: clippy warnings
* chore: remove useless error variant and format toml
* fix: cr comments
* chore: resolve conflicts
* chore: rebase develop
* fix: cr comments
* feat: support multi regions on datanode
* chore: rebase onto develop
* chore: rebase develop
* chore: rebase develop
* wip
* fix: compile errors
* feat: multi region
* fix: CR comments
* feat: allow stat existing regions without actually open it
* fix: use table meta in manifest to recover region info
2023-02-07 10:46:18 +08:00
Ning Sun
4ae63b7089
feat: Initial prepare statement support for Postgres protocol ( #925 )
...
* feat: add describe statement to query_engine
* feat: add ability to describe statement for sql handler
* refactor: return schema instead of wrapped ref
* test: resolve tests
* feat: add initial support for prepared statements
* feat: add parameter types to query statement
* test: fix parser test
* chore: add todo task
* fix: turn on integer_datetime for binary timestamp
* fix: format string using single quote
* test: add tests for prepared statement
* Apply suggestions from code review
Co-authored-by: LFC <bayinamine@gmail.com >
* refactor: use stream api from recordbatches
---------
Co-authored-by: LFC <bayinamine@gmail.com >
2023-02-06 22:06:00 +08:00
Ruihang Xia
fc9276c79d
feat: export promql service in server ( #924 )
...
* chore: some tiny typo/style fix
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* feat: add promql server
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* works for mocked query
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* clean up
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* integration test case
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* resolve CR comments
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* expose promql api to our http server
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* resolve CR comments
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* adjust router structure
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-02-03 08:28:56 +00:00
LFC
af935671b2
feat: support "use" in GRPC requests ( #922 )
...
* feat: support "use catalog and schema"(behave like the "use" in MySQL) in GRPC requests
* fix: rebase develop
2023-02-02 20:02:56 +08:00
Ning Sun
39df25a8f6
refactor: make postgres handler stateful ( #914 )
...
* feat: update pgwire to 0.8 and unify postgres handler
* fix: correct password message matching
2023-01-31 14:19:18 +08:00
shuiyisong
aafc26c788
feat: add mysql reject_no_database ( #896 )
...
* chore: update opensrv-mysql to main
* refactor: change mysql server struct
* feat: add option to reject no database mysql connection request
* chore: remove unused condition
* chore: rebase develop
* chore: make reject_no_database optional
2023-01-29 04:09:47 +00:00
shuiyisong
637837ae44
chore: return authorize err msg to mysql client ( #905 )
...
chore: refine authorize err msg to client
2023-01-29 10:53:36 +08:00
Ning Sun
9bc4c0d9c7
fix: mysql tests error ( #897 )
...
fix: mysql tests merge error
2023-01-20 16:15:16 +08:00
zyy17
cc46194f29
refactor: support TLS private key of RSA format and add the full test certificates generation ( #885 )
...
chore: add the full certificate generation
Signed-off-by: zyy17 <zyylsxm@gmail.com >
Signed-off-by: zyy17 <zyylsxm@gmail.com >
2023-01-19 13:13:33 +08:00
shuiyisong
6960739b3d
feat: add authorize to UserProvider trait ( #879 )
...
* feat: add SchemaValidator
* feat: add schema validator to mysql shim
* chore: pass schema validator to http auth layer
* feat: add schema validator to http
* feat: add schema validator to pg
* feat: add schema validator to pg
* feat: add schema validator test
* chore: remove println in test
* chore: use !matches
* refactor: refac authenticate and authorize in http auth
* refactor: refac authenticate and authorize in http auth
* chore: typo
* chore: minor change
* refactor: merge schema_validator into user_providier
* chore: fix license issue
* refactor: change http query param from database to db
* chore: fix cr issue
2023-01-18 12:42:08 +08:00
Lei, HUANG
daad38360f
fix: impl total order for Timestamp ( #878 )
...
* 1. Reimplement Eq for Timestamp
2. Add and/or for GenericRange
* chore: add test for TimestampRange with diff unit
* chore: optimize split implementation
* fix: clippy
* fix: add fast path
* fix: CR comments
2023-01-16 17:37:30 +08:00
dennis zhuang
d162fbb598
fix: compile error in test ( #872 )
2023-01-13 15:12:49 +08:00
discord9
e428a84446
feat: use Python Script as UDF in SQL ( #839 )
...
* feat: reg PyScript as UDF
* refactor: use `ConcreteDataType` instead
* fix: accept `str` data type
* fix: allow binary to capture SIGINT
* test: add test for py udf
* Update src/servers/tests/py_script/mod.rs
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* style: clippy problem
* style: add newline
* chore: PR advices
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-01-13 14:35:03 +08:00
LFC
2664436194
feat: handle "USE <catalog>-<schema>" in MySQL ( #857 )
...
* feat: handle "USE <catalog>-<schema>" in MySQL
* fix: resolve PR comments
2023-01-12 11:12:11 +08:00
shuiyisong
b91c77b862
chore: add path check to http auth ( #866 )
...
* chore: add whitelist to http auth
* chore: use const instead of format everytime
2023-01-12 10:20:18 +08:00
Ruihang Xia
32d51947a4
refactor: adjust outermost error message ( #859 )
...
* refactor: adjust outermost error message
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* preserve tonic status code
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-01-10 17:28:27 +08:00
LFC
72f05a3137
feat: flight aboard ( #840 )
...
feat: replace old GRPC interface with Arrow Flight
2023-01-09 17:06:24 +08:00
Ruihang Xia
2679faf911
refactor: move parse methods out of QueryEngine trait ( #850 )
...
* refactor: move parse methods out of QueryEngine trait
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix styles
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* change style
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add license header
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix test literal
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-01-09 15:44:20 +08:00
Ning Sun
3988770266
feat: add catalog name resolution for postgres and http interface ( #810 )
...
* feat: add catalog name resolution for postgres and http interface
* test: add tests for catalog resolution on http and postgres
* feat: assign custom catalog for query
* chore: order code for better readability
2023-01-09 11:43:25 +08:00
LFC
d1730a9577
refactor: simplify how Frontend instance handles other protocols ( #831 )
...
* refactor: make influxdb, opentsdb and prometheus read/write goes through GRPC interface, to unify and simplify the Frontend instance either in standalone or distributed mode
2023-01-06 12:19:38 +08:00
LFC
50cc0e9b51
feat: Impl Insert functionality of Arrow Flight service for Frontend Instance ( #821 )
...
* feat: Implement Insert functionality of Arrow Flight service for Frontend Instance
* fix: update license content
* Update src/common/grpc-expr/src/alter.rs
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
* fix: resolve PR comments
* fix: resolve PR comments
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
2023-01-04 17:48:59 +08:00
Ning Sun
041cd422a1
refactor: do not call use upon mysql connection ( #818 )
2023-01-03 19:15:47 +08:00
Lei, HUANG
8ffc078f88
fix: license header ( #815 )
2023-01-03 15:09:49 +08:00
shuiyisong
179ff728df
refactor: merge servers::context into session ( #811 )
...
* refactor: move context to session
* chore: add unit test
* chore: add pg, opentsdb, influxdb and prometheus to channel enum
2022-12-31 00:00:04 +08:00
LFC
d13de0aeba
refactor: remove AdminExpr, make DDL expressions as normal GRPC requests ( #808 )
...
* refactor: remove AdminExpr, make DDL expressions as normal GRPC requests
2022-12-30 16:47:45 +08:00
LFC
de6803d253
feat: handle InsertRequest(formerly InsertExpr) in new Arrow Flight ( #800 )
...
feat: handle InsertRequest(formerly InsertExpr) in new Arrow Flight interface
2022-12-30 10:24:09 +08:00
LFC
26848f9f5c
feat: Replace SelectResult with FlightData ( #776 )
...
* feat: replace SelectResult with FlightData
* Update tests/runner/src/env.rs
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2022-12-28 10:22:46 +08:00
Ruihang Xia
26a3e93ca7
chore: util workspace deps in more places ( #792 )
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2022-12-27 16:26:59 +08:00
shuiyisong
d589de63ef
feat: pub auth_mysql & add auth boxed err ( #788 )
...
* chore: minor openup
* chore: open up auth_mysql and return ()
* chore: typo change
* chore: change according to ci
* chore: change according to ci
* chore: remove tonic status in auth error
2022-12-27 11:04:05 +08:00
discord9
e85780b5e4
refactor: rename some mod.rs to <MOD_NAME>.rs ( #784 )
...
* refactor: rename `mod.rs` to <MOD_NAME>.rs
* refactor: not rename mod.rs in benches/
2022-12-26 12:48:34 +08:00
Ning Sun
11bdb33d37
feat: sql query interceptor and plugin refactoring ( #773 )
...
* feat: let instance hold plugins
* feat: add sql query interceptor definition
* docs: add comments to key apis
* feat: add implementation for pre-parsing and post-parsing
* feat: add post_execute hook
* test: add tests for interceptor
* chore: add license header
* fix: clippy error
* Update src/cmd/src/frontend.rs
Co-authored-by: LFC <bayinamine@gmail.com >
* refactor: batching post_parsing calls
* refactor: rename AnyMap2 to Plugins
* feat: call pre_execute with logical plan empty at the moment
Co-authored-by: LFC <bayinamine@gmail.com >
2022-12-23 15:22:12 +08:00
LFC
1daba75e7b
refactor: use "USE" keyword ( #785 )
...
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-23 14:29:47 +08:00
LFC
dc52a51576
chore: upgrade to Arrow 29.0 and use workspace package and dependencies ( #782 )
...
* chore: upgrade to Arrow 29.0 and use workspace package and dependencies
* fix: resolve PR comments
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-23 14:28:37 +08:00
LFC
ea9af42091
chore: upgrade Rust to nightly 2022-12-20 ( #772 )
...
* chore: upgrade Rust to nightly 2022-12-20
* chore: upgrade Rust to nightly 2022-12-20
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-21 19:32:30 +08:00