Commit Graph

2981 Commits

Author SHA1 Message Date
Smita Kulkarni
6a8fa2d4a5 Added new field allow_readonly in system.table_functions to allow using table functions in readonly mode.
Implementation:
* Added a new field allow_readonly to table system.table_functions.
* Updated to use new field allow_readonly to allow using table functions in readonly mode.
* Added TableFunctionProperties similar to AggregateFunctionProperties.
* The functions allowed in readonly mode are in this set table_functions_allowed_in_readonly_mode.
Testing:
* Added a test for filesystem tests/queries/0_stateless/02473_functions_in_readonly_mode.sh
Documentation:
* Updated the english documentation for Table Functions.
2022-10-26 18:45:23 +02:00
Dan Roscigno
4bf48bce90
Merge branch 'master' into update-backup-for-s3 2022-10-26 10:38:30 -04:00
李扬
04f8f38580
Merge branch 'master' into ascii_function 2022-10-26 07:29:49 -05:00
SmitaRKulkarni
5df138da82
Merge pull request #42376 from ClickHouse/36316_Support_glob_for_recursive_directory_traversal
Added ** glob support for recursive directory traversal to filesystem…
2022-10-26 11:49:20 +02:00
taiyang-li
2254bef74a implement function ascii 2022-10-26 14:19:26 +08:00
Dan Roscigno
690e4e70ae
Merge branch 'master' into update-backup-for-s3 2022-10-25 21:40:49 -04:00
DanRoscigno
91c3744cfe add backup to S3 endpoint 2022-10-25 21:33:09 -04:00
ltrk2
2c902bbc65
Implement support for different UUID binary formats (#42108)
* Implement support for different UUID binary formats

* Declare error codes that the implementation uses

* Make single-argument constructor explicit

* Modernize parts of the solution

* Make improvements based on review comments

* Declare an error code being used
2022-10-25 21:57:50 +02:00
SmitaRKulkarni
96c8260230
Merge branch 'master' into 36316_Support_glob_for_recursive_directory_traversal 2022-10-24 18:34:19 +02:00
Robert Schulze
b746224217
Merge pull request #42554 from arenadata/ADQM-604
Add support of Date32 arguments for dateName function
2022-10-22 17:20:10 +02:00
Alexey Milovidov
bc6762d613
Merge pull request #42565 from alexeyerm/other-functions.md-fix
other-functions.md example fix
2022-10-22 04:20:23 +02:00
Alexey Milovidov
592fbb3eaf
Merge pull request #42367 from ClickHouse/revert-40217
Revert #40217
2022-10-21 21:56:15 +02:00
Dan Roscigno
440af00c74
Merge pull request #42151 from ClickHouse/remove-misc-statements
Docs: Remove obsolete misc page
2022-10-21 13:48:53 -04:00
alexeyerm
9abfe76fbb
doc fix fix 2022-10-21 20:08:44 +03:00
alexeyerm
95943dbdda
fix transform() example 2022-10-21 19:44:35 +03:00
Robert Schulze
2d448c139c
Merge pull request #42308 from arenadata/ADQM-584
Add support of Date32 arguments for date_diff function
2022-10-21 13:18:44 +02:00
Roman Vasin
537f7000d6 Update documentation 2022-10-21 06:55:24 +00:00
Smita Kulkarni
32fad205f0 Added documentation for file and s3 - 36316 Support ** glob for recursive directory traversal 2022-10-18 14:08:26 +02:00
Alexey Milovidov
d1f0c80ffe Revert "Merge pull request #40217 from zvonand/zvonand-minmax"
This reverts commit df934d8762, reversing
changes made to d3a7945b1b.
2022-10-17 04:57:15 +02:00
Roman Vasin
90f9bd24a3 Update documentation 2022-10-14 08:02:38 +00:00
Alexey Milovidov
9bf5fe728b
Merge pull request #42173 from ClickHouse/remove-temporary-live-view
Remove TEMPORARY LIVE VIEW
2022-10-08 19:05:33 +03:00
Alexey Milovidov
b9159db82f Remove temporary live views 2022-10-08 00:16:36 +02:00
Robert Schulze
3e3c0a7bb6
Docs: Add "TABLE" to CHECK/DESCRIBE statements in sidebar 2022-10-07 14:41:00 +00:00
Robert Schulze
cde0257d11
Docs: Remove obsolete pages
Removes page https://clickhouse.com/docs/en/sql-reference/statements/misc

It indexes "miscellaneous" SQL statements but these are already easily
reachable by the sidebar.
2022-10-07 14:37:22 +00:00
Robert Schulze
e759a64d38
Docs: Redirect links to misc.md
--> https://clickhouse.com/docs/en/sql-reference/statements/misc

This page indexes a bunch of SQL statements but they are easily
reachable by the sidebar already.
2022-10-07 13:22:40 +00:00
Duc Canh Le
a886804cbf Merge branch 'master' into ch_canh_fix_decrypt_with_null 2022-10-04 13:20:29 +08:00
Sergei Trifonov
a2cf5a650e
Merge pull request #41989 from alexey-ivanov-official/fix-cumulative-sum-documentation-bug
Fix "Cumulative sum" example in "Window functions"
2022-10-03 18:19:51 +02:00
Sergei Trifonov
939b9091cc
Merge pull request #42007 from aldy505/master
docs(statements): specify ON CLUSTER clause for CREATE ROLE
2022-10-03 15:13:25 +02:00
Duc Canh Le
fbb9b3f5ab Merge branch 'master' into ch_canh_fix_decrypt_with_null 2022-10-03 17:56:06 +08:00
Robert Schulze
8e727d4fbc
Merge pull request #41910 from arenadata/ADQM-583
Improve enable_extended_results_for_datetime_functions option to return results of type DateTime64
2022-10-02 20:46:51 +02:00
Alexey Milovidov
0d1d177013
Merge pull request #41131 from JackyWoo/add_function_java_int_hash
Support Java integers hashing in `javaHash`
2022-10-02 18:10:51 +03:00
Duc Canh Le
99bf356220
Merge branch 'master' into ch_canh_fix_decrypt_with_null 2022-10-02 14:35:42 +08:00
Reinaldy Rafli
b52d58dcae
docs(statements): specify ON CLUSTER clause for CREATE ROLE 2022-10-02 09:51:17 +07:00
Alexey Ivanov
5e290da99b
Fix "Cumulative sum" example in "Window functions"
Fixes a problem in "Cumulative sum" example in "Window functions" documentation, 
when CREATE TABLE part of example was not match to SQL examples.

see: https://clickhouse.com/docs/en/sql-reference/window-functions/#cumulative-sum
2022-10-01 17:49:20 +03:00
Roman Vasin
f716fc2fe5 Put list of functions in correct order in docs; Use new formatting in exception messages. 2022-09-30 07:54:35 +00:00
Roman Vasin
45414b251d Merge branch 'master' of github.com:ClickHouse/ClickHouse into ADQM-583 2022-09-29 17:02:49 +00:00
Roman Vasin
9dfb2d058c Add DateTime64 returing functions in Note box 2022-09-29 14:23:50 +00:00
Robert Schulze
6381631836
Merge pull request #41824 from ClickHouse/tryBase58
Add function tryBase58Decode()
2022-09-29 12:38:58 +02:00
Robert Schulze
6379cb41ce
Merge branch 'master' into fix-links 2022-09-29 09:17:39 +02:00
Robert Schulze
fa93952231
Docs: Reference external papers as DOIs
See also #31076 which noted that links were broken but didn't fix.
2022-09-28 12:21:58 +00:00
Duc Canh Le
6fd234d652 fix document typo and format 2022-09-28 20:06:18 +08:00
Robert Schulze
82139fad0e
Docs: Remove obsolete modelEvaluate() mention 2022-09-28 11:47:16 +00:00
Duc Canh Le
170ca26435 add document 2022-09-28 17:55:20 +08:00
Alexey Milovidov
683b7e5e95
Merge branch 'master' into add_function_java_int_hash 2022-09-28 01:30:26 +03:00
Dan Roscigno
4f23f6ef25
fix other links
Co-authored-by: Yakov Olkhovskiy <99031427+yakov-olkhovskiy@users.noreply.github.com>
2022-09-27 14:07:35 -04:00
DanRoscigno
4be153cbd3 fix link from intro 2022-09-27 10:21:35 -04:00
Robert Schulze
33891c275e
Fix typo 2022-09-27 10:20:39 +00:00
Robert Schulze
aa7e62ad5f
Add functio ntryBase58Decode()
- makes it consistent with tryBase64Decode(), follow-up to #39292

- additionally the following minor changes:

  - rename Common/base58.h|cpp to Common/Base58.h|cpp for constency with
    Common/Base64.h|cpp

  - check that (encode|decode|tryDecode)Base64() gets just one argument
2022-09-27 10:18:36 +00:00
Kseniia Sumarokova
5caac39328
Merge pull request #41508 from kssenii/rename-some-cache-commands
Rename: `show caches` -> `show filesystem caches`, `describe cache` -> `describe filesystem cache`
2022-09-22 13:09:14 +02:00
Alexey Milovidov
bca4cc98c3
Merge pull request #41595 from Algunenano/fix_variadic_reading_random_data
Do not process rows in aggregations if any of the parameters is NULL
2022-09-22 07:57:37 +03:00
Denny Crane
a59f7a3aa9
Update tuple.md 2022-09-21 13:00:46 -03:00
Raúl Marín
fd503b34d9 Remove any processing of undelying values for NULLs 2022-09-20 18:43:21 +02:00
kssenii
b8079e4577 Merge remote-tracking branch 'upstream/master' into rename-some-cache-commands 2022-09-20 13:02:18 +02:00
kssenii
6dcbeceeb9 Update doc 2022-09-20 13:00:10 +02:00
Sergei Trifonov
f7a1ed3141
Merge branch 'master' into readonly-settings-allow 2022-09-19 12:52:36 +02:00
Alexey Milovidov
2e5fa7880e
Update geo.md 2022-09-19 07:52:24 +03:00
Kruglov Pavel
519bcbb3be
Merge pull request #41236 from Avogar/fix-totals-extremes
Don't output totals/extremes in all row formats, update docs
2022-09-18 14:55:07 +02:00
Robert Schulze
38aecc15a2
Merge pull request #41214 from arenadata/ADQM-528-B
Add enable_extended_results_for_datetime_functions option to return results of type Date32
2022-09-17 19:25:11 +02:00
DanRoscigno
149970447a add link to formats 2022-09-16 17:21:03 -04:00
Kruglov Pavel
2d4a6b38af
Merge branch 'master' into fix-totals-extremes 2022-09-16 15:03:59 +02:00
Robert Schulze
b32b02d844
Merge pull request #40897 from ClickHouse/catboost-bridge-resurrected
Move CatBoost evaluation into clickhouse-library-bridge
2022-09-16 13:12:09 +02:00
Roman Vasin
d82cd7b007 Add many cosmetic changes to C++ code and MD docs 2022-09-16 09:37:30 +00:00
Roman Vasin
5c242de43a Merge branch 'master' of github.com:ClickHouse/ClickHouse into ADQM-528-B 2022-09-15 13:47:51 +00:00
Roman Vasin
3ce66eab83 Correct all needed MD files 2022-09-15 13:28:11 +00:00
Kseniia Sumarokova
c511c3f168
Merge pull request #40889 from AVMusorin/docs_table_function_update
Doc. Updated optional parameters for table functions
2022-09-15 13:12:20 +02:00
JackyWoo
afcbf3a853
Merge branch 'master' into add_function_java_int_hash 2022-09-15 10:08:26 +08:00
JackyWoo
05516bfd03 fix docs 2022-09-15 10:07:39 +08:00
Denny Crane
69d90de9a3
Update date-time-functions.md 2022-09-14 15:23:59 -03:00
Denny Crane
cbdbe1077a
Update date-time-functions.md 2022-09-14 12:16:32 -03:00
JackyWoo
9578594439
Merge branch 'master' into add_function_java_int_hash 2022-09-14 20:42:41 +08:00
Robert Schulze
cb04c724b9
Merge pull request #41285 from ClickHouse/fix-broken-doc-links
System statements docs: Fix broken links
2022-09-14 13:03:01 +02:00
JackyWoo
2c8e5f0156 Merge branch 'master' into add_function_java_int_hash 2022-09-14 10:11:15 +08:00
Robert Schulze
49136d26aa
docs: fix internal links
The links at the very beginning of
https://clickhouse.com/docs/en/sql-reference/statements/system
don't work. They are reference other sections of the same document. This
is weird because there is a small index already on the right side. I
searched our documentation and this seems to be the only pages which do
so. Therefore removing the links altogether instead of fixing them.
2022-09-13 19:45:46 +00:00
Dan Roscigno
078b9bff3c
Update docs/en/sql-reference/statements/delete.md 2022-09-13 13:18:01 -04:00
Rich Raposa
b833c39dcf
Update delete.md 2022-09-13 10:55:26 -06:00
Rich Raposa
e85b222136
Update delete.md 2022-09-13 10:54:47 -06:00
DanRoscigno
64bd1ea77a spelling 2022-09-13 12:42:24 -04:00
DanRoscigno
fc2e7159f0 add note about privs 2022-09-13 12:40:16 -04:00
Robert Schulze
3e6821e8d7
fix: repair broken documentation links and update docs 2022-09-13 16:00:53 +00:00
JackyWoo
e3caa6f096 some fixes 2022-09-13 21:21:35 +08:00
Kruglov Pavel
17621b5607
Merge branch 'master' into fix-totals-extremes 2022-09-13 14:36:31 +02:00
Robert Schulze
fac1be9700
chore: restore SYSTEM RELOAD MODEL(S) and moniting view SYSTEM.MODELS
- This commit restores statements "SYSTEM RELOAD MODEL(S)" which provide
  a mechanism to update a model explicitly. It also saves potentially
  unnecessary reloads of a model from disk after it's initial load.

  To keep the complexity low, the semantics of "SYSTEM RELOAD MODEL(S)
  was changed from eager to lazy. This means that both statements
  previously immedately reloaded the specified/all models, whereas now
  the statements only trigger an unload and the first call to
  catboostEvaluate() does the actual load.

- Monitoring view SYSTEM.MODELS is also restored but with some obsolete
  fields removed. The view was not documented in the past and for now it
  remains undocumented. The commit is thus not considered a breach of
  ClickHouse's public interface.
2022-09-12 19:33:02 +00:00
avogar
8ac2fc7b26 Don't outout totals/extremes in all row formats, update docs 2022-09-12 17:21:40 +00:00
Sergei Trifonov
fe88a7991d
Merge branch 'master' into readonly-settings-allow 2022-09-12 16:20:40 +02:00
Rich Raposa
b9e9d776f0
Update delete.md 2022-09-09 15:55:57 -06:00
rfraposa
4af246a2e0 Feedback 2022-09-09 13:59:21 -06:00
Aleksandr
503398ac96
Merge branch 'master' into docs_table_function_update 2022-09-09 20:54:28 +02:00
Rich Raposa
9870957621
Update docs/en/sql-reference/statements/delete.md
Co-authored-by: Ivan Blinkov <github@blinkov.ru>
2022-09-09 12:16:54 -06:00
Rich Raposa
50789126a8
Update docs/en/sql-reference/statements/delete.md
Co-authored-by: Ivan Blinkov <github@blinkov.ru>
2022-09-09 12:15:59 -06:00
Rich Raposa
34c2c4bb52
Merge branch 'master' into lightweight-delete 2022-09-09 12:13:51 -06:00
Nikolay Degterinsky
6dcaa9f14d
Merge pull request #41106 from vincentbernat/fix/docs-sync
docs: mention SYNC modifier for DROP and DETACH statements
2022-09-09 20:12:47 +02:00
Sergei Trifonov
76eb001e78 add test for changeable_in_readonly + fix SQL in docs 2022-09-09 14:01:29 +02:00
rfraposa
18f5b5e5b0 Add docs for lightweight deletes 2022-09-08 16:05:56 -06:00
Denny Crane
132727d212
Doc. Fix links. 2022-09-08 14:37:42 -03:00
Vincent Bernat
fab1b40928 docs: mention SYNC modifier for DROP and DETACH statements 2022-09-08 15:21:59 +02:00
Robert Schulze
c16707ff00
chore: delete obsolete modelEvaluate() function + SYSTEM.MODELS view
- The deleted function modelEvaluate() was superseded by
  catboostEvaluate().

- Also delete the external model repository, as modelEvaluate() was it's
  last user. Additionally remove the system view SYSTEM.MODELS for
  inspecting the repository.

- SYSTEM RELOAD MODELS is also obsolete. HOWEVER, it was retained and
  made a no-op instead of deleted.

  Why?
  The reason is that RBAC in distributed setups works by storing
  privileges (granted and revoked) as plain SQL statements in Keeper.
  Nodes read these statements at startup and parse them. If a privilege
  for SYSTEM RELOAD MODELS exists but parser doesn't recognize it
  nodes would fail to come up.

  Considered but rejected alternatives:
  - Ignore SYSTEM RELOAD MODELS during parsing RBAC privileges and
    return an error for regular SYSTEM RELOAD MODELS SQL. Special-case
    of no-op behavior, too brittle.
  - Remove SYSTEM RELOAD MODELS manually from Keeper via command-line
    manipulation of Keeper nodes or via SQL by dropping the privileges.
    Needs user intervention during upgrade.
2022-09-08 09:10:11 +00:00
Robert Schulze
60f9f6855d
feat: implement catboost in library-bridge
This commit moves the catboost model evaluation out of the server
process into the library-bridge binary. This serves two goals: On the
one hand, crashes / memory corruptions of the catboost library no longer
affect the server. On the other hand, we can forbid loading dynamic
libraries in the server (catboost was the last consumer of this
functionality), thus improving security.

SQL syntax:

  SELECT
    catboostEvaluate('/path/to/model.bin', FEAT_1, ..., FEAT_N) > 0 AS prediction,
    ACTION AS target
  FROM amazon_train
  LIMIT 10

Required configuration:

  <catboost_lib_path>/path/to/libcatboostmodel.so</catboost_lib_path>

*** Implementation Details ***

The internal protocol between the server and the library-bridge is
simple:

- HTTP GET on path "/extdict_ping":
  A ping, used during the handshake to check if the library-bridge runs.

- HTTP POST on path "extdict_request"
  (1) Send a "catboost_GetTreeCount" request from the server to the
      bridge, containing a library path (e.g /home/user/libcatboost.so) and
      a model path (e.g. /home/user/model.bin). Rirst, this unloads the
      catboost library handler associated to the model path (if it was
      loaded), then loads the catboost library handler associated to the
      model path, then executes GetTreeCount() on the library handler and
      finally sends the result back to the server. Step (1) is called once
      by the server from FunctionCatBoostEvaluate::getReturnTypeImpl(). The
      library path handler is unloaded in the beginning because it contains
      state which may no longer be valid if the user runs
      catboost("/path/to/model.bin", ...) more than once and if "model.bin"
      was updated in between.
  (2) Send "catboost_Evaluate" from the server to the bridge, containing
      the model path and the features to run the interference on. Step (2)
      is called multiple times (once per chunk) by the server from function
      FunctionCatBoostEvaluate::executeImpl(). The library handler for the
      given model path is expected to be already loaded by Step (1).

Fixes #27870
2022-09-08 09:01:32 +00:00
Denny Crane
a75eb5ad84
Update date-time-functions.md 2022-09-07 15:59:23 -03:00
Denny Crane
0071ef9e38
Update date-time-functions.md 2022-09-07 15:56:31 -03:00
Kruglov Pavel
582216a3ca
Merge pull request #39919 from pzhdfy/UniqSketch
UniqThetaSketch support set operation such as union/intersect/not
2022-09-05 13:42:14 +02:00