Files
scylladb/ent/encryption/encryption_exceptions.hh
Calle Wilund 00263aa57a gcp/aws kms: Promote service_error to recoverable + use malformed_response_error
Refs #22628

Mark problems parsing response (partial message, network error without exception etc
- hello testing), as "malformed_response_error", and promote this as well as
general "service_error" to recoverable exceptions (don't isolate node on error).

This to better handle intermittent network issues as well as making error-testing
more deterministic.
2025-02-17 13:49:43 +00:00

56 lines
1.2 KiB
C++

/*
* Copyright (C) 2024 ScyllaDB
*
*/
/*
* SPDX-License-Identifier: LicenseRef-ScyllaDB-Source-Available-1.0
*/
#pragma once
#include "db/extensions.hh"
namespace encryption {
using base_error = db::extension_storage_exception;
class permission_error : public db::extension_storage_permission_error {
public:
using mybase = db::extension_storage_permission_error;
using mybase::mybase;
};
class configuration_error : public db::extension_storage_misconfigured {
public:
using mybase = db::extension_storage_misconfigured;
using mybase::mybase;
};
class service_error : public db::extension_storage_resource_unavailable {
public:
using mybase = db::extension_storage_resource_unavailable;
using mybase::mybase;
};
class missing_resource_error : public service_error {
public:
using service_error::service_error;
};
// #4970 - not 100% correct, but network errors are
// generally intermittent/recoverable. Mark as a non-isolating
// error.
class network_error : public missing_resource_error {
public:
using missing_resource_error::missing_resource_error;
};
class malformed_response_error : public service_error {
public:
using service_error::service_error;
};
}