rgw/rgw_lua_utils: return error using luaL_error()
it's found on aarch64, the exception is not caught even if we do
catch exactly the same type of thrown exception, and the uncaught
exception ends up with a std::terminate() call. it could be the ABI
mismatch in aarch64, so the C++ runtime failed to find the catch block.
in this change, luaL_error() is used to populate the error to the
caller instead to workaround this issue.