diff options
author | Michael Klishin <klishinm@vmware.com> | 2021-09-28 12:34:53 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-28 12:34:53 +0300 |
commit | 96865bbd3d74479383b5e471cb6bb50101f5ad77 (patch) | |
tree | f5feb1f6bd91a02d0e2a4fffb86119140679b36c | |
parent | d88129d3cafc919e1e2bcde0fcec5e551f8a6dbf (diff) | |
parent | b34cd9ad76bb44fe246051106672de3db4b2800b (diff) | |
download | rabbitmq-server-git-96865bbd3d74479383b5e471cb6bb50101f5ad77.tar.gz |
Merge pull request #3513 from rabbitmq/mergify/bp/v3.9.x/pr-3511
Preserve stacktraces in propagated internal auth backend exceptions (backport #3511)
-rw-r--r-- | deps/rabbit/src/rabbit_auth_backend_internal.erl | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/deps/rabbit/src/rabbit_auth_backend_internal.erl b/deps/rabbit/src/rabbit_auth_backend_internal.erl index d94526270a..a46beaaf83 100644 --- a/deps/rabbit/src/rabbit_auth_backend_internal.erl +++ b/deps/rabbit/src/rabbit_auth_backend_internal.erl @@ -234,9 +234,9 @@ add_user_sans_validation(Username, Password, ActingUser) -> throw:{error, {user_already_exists, _}} = Error -> rabbit_log:warning("Failed to add user '~s': the user already exists", [Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to add user '~s': ~p", [Username, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end . -spec delete_user(rabbit_types:username(), rabbit_types:username()) -> 'ok'. @@ -272,9 +272,9 @@ delete_user(Username, ActingUser) -> throw:{error, {no_such_user, _}} = Error -> rabbit_log:warning("Failed to delete user '~s': the user does not exist", [Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to delete user '~s': ~p", [Username, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end . -spec lookup_user @@ -317,9 +317,9 @@ change_password_sans_validation(Username, Password, ActingUser) -> throw:{error, {no_such_user, _}} = Error -> rabbit_log:warning("Failed to change password for user '~s': the user does not exist", [Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to change password for user '~s': ~p", [Username, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end. -spec clear_password(rabbit_types:username(), rabbit_types:username()) -> 'ok'. @@ -368,9 +368,9 @@ set_tags(Username, Tags, ActingUser) -> throw:{error, {no_such_user, _}} = Error -> rabbit_log:warning("Failed to set tags for user '~s': the user does not exist", [Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to set tags for user '~s': ~p", [Username, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end . -spec set_permissions @@ -428,10 +428,10 @@ set_permissions(Username, VirtualHost, ConfigurePerm, WritePerm, ReadPerm, Actin rabbit_log:warning("Failed to set permissions for '~s': the user does not exist", [Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to set permissions for '~s' in virtual host '~s': ~p", [Username, VirtualHost, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end. -spec clear_permissions @@ -464,10 +464,10 @@ clear_permissions(Username, VirtualHost, ActingUser) -> rabbit_log:warning("Failed to clear permissions for '~s': the user does not exist", [Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to clear permissions for '~s' in virtual host '~s': ~p", [Username, VirtualHost, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end. @@ -537,10 +537,10 @@ set_topic_permissions(Username, VirtualHost, Exchange, WritePerm, ReadPerm, Acti rabbit_log:warning("Failed to set topic permissions on exchange '~s' for '~s': the user does not exist.", [Exchange, Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to set topic permissions on exchange '~s' for '~s' in virtual host '~s': ~p.", [Exchange, Username, VirtualHost, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end . clear_topic_permissions(Username, VirtualHost, ActingUser) -> @@ -572,10 +572,10 @@ clear_topic_permissions(Username, VirtualHost, ActingUser) -> rabbit_log:warning("Failed to clear topic permissions for '~s': the user does not exist", [Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to clear topic permissions for '~s' in virtual host '~s': ~p", [Username, VirtualHost, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end. clear_topic_permissions(Username, VirtualHost, Exchange, ActingUser) -> @@ -609,10 +609,10 @@ clear_topic_permissions(Username, VirtualHost, Exchange, ActingUser) -> rabbit_log:warning("Failed to clear topic permissions on exchange '~s' for '~s': the user does not exist", [Exchange, Username]), throw(Error); - Class:Error -> + Class:Error:Stacktrace -> rabbit_log:warning("Failed to clear topic permissions on exchange '~s' for '~s' in virtual host '~s': ~p", [Exchange, Username, VirtualHost, Error]), - erlang:Class(Error) + erlang:raise(Class, Error, Stacktrace) end. put_user(User, ActingUser) -> put_user(User, undefined, ActingUser). |