Commit Graph

39 Commits

Author SHA1 Message Date
Azat Khuzhin
cfc79d9146 Fix history file conversion if file is empty 2021-07-20 21:00:53 +03:00
feng lv
1d332da0ed fix special build on clang 11 2021-07-02 05:51:53 +00:00
alexey-milovidov
24759a9b67
Update ReplxxLineReader.cpp 2021-07-02 04:26:49 +03:00
alexey-milovidov
a41a1b7c74
Update ReplxxLineReader.cpp 2021-07-02 04:25:07 +03:00
Azat Khuzhin
626f47e044 Convert history file from readline format to replxx format
replxx requires each history line to prepended with time line:

    ### YYYY-MM-DD HH:MM:SS.SSS
    select 1

And w/o those service lines it will load all lines from history file as
one history line for suggestion. And if there are lots of lines in file it
will take lots of time (getline() + tons of reallocations).
2021-06-30 22:06:16 +03:00
Azat Khuzhin
5ff78fb297 replxx readline compatibility
- By default M-BACKSPACE is KILL_TO_WHITESPACE_ON_LEFT, while in
  readline it is backward-kill-word, so use KILL_TO_BEGINING_OF_WORD
  instead.
- By default C-w is KILL_TO_BEGINING_OF_WORD, while in readline it is
  unix-word-rubout, so use KILL_TO_WHITESPACE_ON_LEFT instead.
2021-05-02 23:26:42 +03:00
Alexey Milovidov
191389d040 Fix some of the issues found by Coverity 2021-02-02 22:08:32 +03:00
Alexey Milovidov
12485eee6b Fix some of the issues found by Coverity 2021-02-02 22:07:23 +03:00
Amos Bird
fe16aec48b
add .sql suffix 2020-12-21 14:43:06 +08:00
Amos Bird
0d89e4aac6
correct write 2020-12-21 14:43:06 +08:00
Amos Bird
86aa155e62
Cleaner 2020-12-21 14:43:05 +08:00
Amos Bird
a3d52dd6a0
Don't shallow errors. 2020-12-21 14:43:05 +08:00
Amos Bird
91e8b35977
clickhouse-client editor 2020-12-21 14:43:05 +08:00
Alexey Milovidov
fb3d235e84 Do not use strerror 2020-12-17 21:25:12 +03:00
Amos Bird
88341fec82
client SIGWINCH fix 2020-12-12 00:34:40 +08:00
Azat Khuzhin
f7bf94b5d3 Check return value of the history_save/history_load
The coding style is different and this is the intention, to make look
like surrounding code.
2020-10-12 23:57:00 +03:00
Azat Khuzhin
f211d33841 Avoid creating separate replxx instance
This replxx object is pretty heavy and in debug build may slow down [1]
(although I cannot confirm 0.5s delay for each query in debug build) the
client and besides it is not required since ClickHouse-Extras/replxx#10,
which changes the behaviour of history_save(), and now it will not
update current session anymore, only save the history to the disk.

  [1]: https://github.com/ClickHouse/ClickHouse/pull/13086#issuecomment-667719026
2020-10-12 23:56:29 +03:00
alesapin
1adc0a8205 Fix race condition in client suggestions 2020-09-28 12:58:42 +03:00
Azat Khuzhin
b7eee3afe0 Add a comment of explicit flock() in ReplxxLineReader::addToHistory() 2020-07-29 21:00:46 +03:00
Azat Khuzhin
d6102869e5 Avoid re-loading completion from the history file after each query
By default replxx reload history from the file in
replxx::Replxx::history_save(), and this will overlaps current session
history with the history from other sessions, and this does not looks a
great idea (bash and other interpreters don't do this).

So to avoid this, use separate replxx::Replxx instance.
2020-07-29 21:00:46 +03:00
alexey-milovidov
ce4f528b73
Merge branch 'master' into kuskarov-add_syntax_highlighting 2020-06-08 02:14:09 +03:00
Alexey Milovidov
df19db1509 Added a test for history in clickhouse-client 2020-06-07 20:29:34 +03:00
alexey-milovidov
6b97fd6378
Update ReplxxLineReader.cpp 2020-06-06 12:51:42 +03:00
alexey-milovidov
7003fe8258
Update ReplxxLineReader.cpp 2020-06-06 12:49:15 +03:00
Alexey Milovidov
e1b5ee51c1 Better way to plug in the code 2020-06-05 01:45:04 +03:00
Alexey Milovidov
275075b6f7 Revert all changes but save commit history from @kuskarov 2020-06-05 01:44:29 +03:00
Tagir Kuskarov
d0312bf1fe Fix 2020-06-05 02:36:40 +04:00
Tagir Kuskarov
d916d0849d Add diagnostic messages 2020-06-05 02:10:22 +04:00
Tagir Kuskarov
83ba86c5f6 Fix history bug 2020-06-05 01:31:51 +04:00
Tagir Kuskarov
fed90652c9 Move files 2020-06-04 05:04:57 +04:00
Tagir Kuskarov
643c3cd153 Add syntax highlighting first version 2020-06-02 16:08:09 +04:00
Alexey Milovidov
38829beb1c Minor updates 2020-06-02 06:28:59 +03:00
Alexey Milovidov
1bbbfc6e1b Fix \G in clickhouse-client multiline mode #9933 2020-06-02 06:25:19 +03:00
Alexey Milovidov
09f91cddae Fixes for clang-tidy on clang-10 2020-04-22 01:04:19 +03:00
alexey-milovidov
c402cb5951
Merge pull request #9450 from azat/replxx-readline-compat
clickhouse-client: bind C-p/C-n to history-previous/history-next (like readline)
2020-02-29 20:54:06 +03:00
Azat Khuzhin
4fe24488e8 Bind C-p/C-n to history-previous/history-next like readline in clickhouse-client with replxx
It is not easy to keep in mind that C-p/C-n is not
history-previous/history-next in replxx, thus it is pretty easy to
mistype.

Previous COMPLETE_NEXT/COMPLETE_PREV bindings has been binded to the
M-P/M-N (that was used for HISTORY_COMMON_PREFIX_SEARCH before, but it
also binded to M-p/M-n).

Plus clickhouse-client can be compiled with readline, so it is better to
make bindings the same.
2020-02-28 23:50:46 +03:00
Amos Bird
ce28d2eb82
Better cmdline client 2020-02-26 02:40:52 +08:00
Ivan Lezhankin
39ea079034 More clean-up 2020-02-17 17:27:09 +03:00
Ivan Lezhankin
2d44fa59b5 libs/ → base/ 2020-02-14 17:48:30 +03:00