mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 18:12:02 +00:00
Fix suggestions for user without grants
This commit is contained in:
parent
e33dc02c8c
commit
f93c032425
@ -23,6 +23,7 @@ namespace ErrorCodes
|
|||||||
extern const int LOGICAL_ERROR;
|
extern const int LOGICAL_ERROR;
|
||||||
extern const int NOT_IMPLEMENTED;
|
extern const int NOT_IMPLEMENTED;
|
||||||
extern const int SUPPORT_IS_DISABLED;
|
extern const int SUPPORT_IS_DISABLED;
|
||||||
|
extern const int ACCESS_DENIED;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class FunctionOrigin : Int8
|
enum class FunctionOrigin : Int8
|
||||||
@ -151,7 +152,8 @@ void StorageSystemFunctions::fillData(MutableColumns & res_columns, ContextPtr c
|
|||||||
|| e.code() == ErrorCodes::FUNCTION_NOT_ALLOWED
|
|| e.code() == ErrorCodes::FUNCTION_NOT_ALLOWED
|
||||||
|| e.code() == ErrorCodes::LOGICAL_ERROR
|
|| e.code() == ErrorCodes::LOGICAL_ERROR
|
||||||
|| e.code() == ErrorCodes::NOT_IMPLEMENTED
|
|| e.code() == ErrorCodes::NOT_IMPLEMENTED
|
||||||
|| e.code() == ErrorCodes::SUPPORT_IS_DISABLED)
|
|| e.code() == ErrorCodes::SUPPORT_IS_DISABLED
|
||||||
|
|| e.code() == ErrorCodes::ACCESS_DENIED)
|
||||||
{
|
{
|
||||||
/// Ignore exception, show is_deterministic = NULL.
|
/// Ignore exception, show is_deterministic = NULL.
|
||||||
}
|
}
|
||||||
|
55
tests/queries/0_stateless/02907_suggestions_readonly_user.expect
Executable file
55
tests/queries/0_stateless/02907_suggestions_readonly_user.expect
Executable file
@ -0,0 +1,55 @@
|
|||||||
|
#!/usr/bin/expect -f
|
||||||
|
|
||||||
|
set basedir [file dirname $argv0]
|
||||||
|
set basename [file tail $argv0]
|
||||||
|
exp_internal -f $env(CLICKHOUSE_TMP)/$basename.debuglog 0
|
||||||
|
set history_file $env(CLICKHOUSE_TMP)/$basename.history
|
||||||
|
|
||||||
|
log_user 0
|
||||||
|
set timeout 60
|
||||||
|
match_max 100000
|
||||||
|
|
||||||
|
expect_after {
|
||||||
|
# Do not ignore eof from expect
|
||||||
|
-i $any_spawn_id eof { exp_continue }
|
||||||
|
# A default timeout action is to do nothing, change it to fail
|
||||||
|
-i $any_spawn_id timeout { exit 1 }
|
||||||
|
}
|
||||||
|
|
||||||
|
spawn bash -c "source $basedir/../shell_config.sh ; \$CLICKHOUSE_CLIENT_BINARY \$CLICKHOUSE_CLIENT_OPT --disable_suggestion --history_file=$history_file"
|
||||||
|
expect ":) "
|
||||||
|
|
||||||
|
send -- "DROP USER IF EXISTS 02907_suggestions_readonly_user\r"
|
||||||
|
expect "Ok."
|
||||||
|
|
||||||
|
send -- "CREATE USER 02907_suggestions_readonly_user\r"
|
||||||
|
expect "Ok."
|
||||||
|
|
||||||
|
send -- "exit\r"
|
||||||
|
expect eof
|
||||||
|
|
||||||
|
spawn bash -c "source $basedir/../shell_config.sh ; \$CLICKHOUSE_CLIENT_BINARY \$CLICKHOUSE_CLIENT_OPT --user=02907_suggestions_readonly_user --history_file=$history_file"
|
||||||
|
expect ":) "
|
||||||
|
|
||||||
|
set timeout 3
|
||||||
|
expect {
|
||||||
|
-ex "Cannot load data" {
|
||||||
|
send_user "Check failed.\n"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
timeout {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
set timeout 60
|
||||||
|
|
||||||
|
send -- "exit\r"
|
||||||
|
expect eof
|
||||||
|
|
||||||
|
spawn bash -c "source $basedir/../shell_config.sh ; \$CLICKHOUSE_CLIENT_BINARY \$CLICKHOUSE_CLIENT_OPT --disable_suggestion --history_file=$history_file"
|
||||||
|
expect ":) "
|
||||||
|
|
||||||
|
send -- "DROP USER 02907_suggestions_readonly_user\r"
|
||||||
|
expect "Ok."
|
||||||
|
|
||||||
|
send -- "exit\r"
|
||||||
|
expect eof
|
Loading…
Reference in New Issue
Block a user