44#include < Common/Logger.h>
55#include < Common/ProfileEvents.h>
66#include < mutex>
7- #include < string_view>
87#include < base/sleep.h>
98#include < base/types.h>
109#include < atomic>
@@ -21,33 +20,33 @@ class Throttler : public IThrottler
2120public:
2221 static const size_t default_burst_seconds = 1 ;
2322
24- Throttler (std::string_view throttler_name_, size_t max_speed_, size_t max_burst_, const ThrottlerPtr & parent_ = nullptr ,
23+ Throttler (const char * throttler_name_, size_t max_speed_, size_t max_burst_, const ThrottlerPtr & parent_ = nullptr ,
2524 ProfileEvents::Event event_amount_ = ProfileEvents::end(),
2625 ProfileEvents::Event event_sleep_us_ = ProfileEvents::end())
2726 : throttler_name(throttler_name_), max_speed(max_speed_), max_burst(max_burst_), limit_exceeded_exception_message(" " ), tokens(static_cast <double >(max_burst)), parent(parent_)
2827 , event_amount(event_amount_), event_sleep_us(event_sleep_us_)
2928 {}
3029
31- Throttler (std::string_view throttler_name_, size_t max_speed_, size_t max_burst_,
30+ Throttler (const char * throttler_name_, size_t max_speed_, size_t max_burst_,
3231 ProfileEvents::Event event_amount_ = ProfileEvents::end(),
3332 ProfileEvents::Event event_sleep_us_ = ProfileEvents::end())
3433 : throttler_name(throttler_name_), max_speed(max_speed_), max_burst(max_burst_), limit_exceeded_exception_message(" " ), tokens(static_cast <double >(max_burst))
3534 , event_amount(event_amount_), event_sleep_us(event_sleep_us_)
3635 {}
3736
38- explicit Throttler (std::string_view throttler_name_, size_t max_speed_, const ThrottlerPtr & parent_ = nullptr ,
37+ explicit Throttler (const char * throttler_name_, size_t max_speed_, const ThrottlerPtr & parent_ = nullptr ,
3938 ProfileEvents::Event event_amount_ = ProfileEvents::end(),
4039 ProfileEvents::Event event_sleep_us_ = ProfileEvents::end());
4140
42- Throttler (std::string_view throttler_name_, size_t max_speed_,
41+ Throttler (const char * throttler_name_, size_t max_speed_,
4342 ProfileEvents::Event event_amount_,
4443 ProfileEvents::Event event_sleep_us_);
4544
46- Throttler (std::string_view throttler_name_, size_t max_speed_, size_t max_burst_, size_t limit_, const char * limit_exceeded_exception_message_,
45+ Throttler (const char * throttler_name_, size_t max_speed_, size_t max_burst_, size_t limit_, const char * limit_exceeded_exception_message_,
4746 const ThrottlerPtr & parent_ = nullptr )
4847 : throttler_name(throttler_name_), max_speed(max_speed_), max_burst(max_burst_), limit(limit_), limit_exceeded_exception_message(limit_exceeded_exception_message_), tokens(static_cast <double >(max_burst)), parent(parent_) {}
4948
50- Throttler (std::string_view throttler_name_, size_t max_speed_, size_t limit_, const char * limit_exceeded_exception_message_,
49+ Throttler (const char * throttler_name_, size_t max_speed_, size_t limit_, const char * limit_exceeded_exception_message_,
5150 const ThrottlerPtr & parent_ = nullptr );
5251
5352 // / Use `amount` tokens, sleeps if required or throws exception on limit overflow.
@@ -77,7 +76,7 @@ class Throttler : public IThrottler
7776 void throttleImpl (size_t amount, size_t & count_value, double & tokens_value, size_t & max_speed_value);
7877
7978 // / Human-readable name for logging (e.g. "backups_query", "remote_read_server")
80- std::string_view throttler_name;
79+ const char * throttler_name;
8180 LoggerPtr log = getLogger(" Throttler" );
8281
8382 size_t count{0 };
0 commit comments