constexpr
char const*
constkParamThreadCount =
"runner_thread_count";
47constexpr
char const*
constkParamConsistency =
"runner_consistency";
48constexpr
char const*
constkParamPageSize =
"runner_page_size";
49constexpr
char const*
constkParamMaxActiveStatements =
"runner_max_active_statements";
50constexpr
char const*
constkParamMaxRetryCount =
"runner_max_retry_count";
97unique_ptr<ICassandraFullscanPlan> plan
102 "Invalid sequence of operations, execution plan should not be overriden" 110 unsigned intmax_retry_count
157 return Execute(
nullptr,
"");
164 "Invalid sequence of operations, execution plan should be provided" 175thread_count =
max(thread_count, 1UL);
178 "Invalid sequence of operations. Thread count is greater than max_active_statements total." 181vector<thread> worker_threads;
182vector<CCassandraFullscanWorker> workers;
184worker_threads.reserve(thread_count - 1);
185workers.reserve(thread_count);
188 if(thread_count > 1) {
203 autoconsumer_factory_fn =
204[
this]() -> unique_ptr<ICassandraFullscanConsumer> {
209 for(
size_t i= 0;
i< thread_count; ++
i) {
219workers.emplace_back(std::move(worker));
223 for(
size_t i= 0;
i< workers.size() - 1; ++
i) {
224worker_threads.emplace_back(
232workers[workers.size() - 1]();
235 for(thread&
t: worker_threads) {
238worker_threads.clear();
240 boolall_finished =
true;
241 for(
const auto& worker : workers) {
242 if(worker.HadError()) {
244 "Fullscan failed: one of workers got exception with message - "+ worker.GetFirstError()
247 if(!worker.IsFinished()) {
248all_finished =
false;
#define BEGIN_IDBLOB_SCOPE
CassConsistency TCassConsistency
static TCassConsistency FromString(string_view value)
shared_ptr< CCassQuery > TQueryPtr
CCassandraFullscanRunner & SetConsumerFactory(TCassandraFullscanConsumerFactory consumer_factory)
unsigned int m_MaxActiveStatements
unsigned int GetPageSize() const
TCassandraFullscanConsumerFactory m_ConsumerFactory
unsigned int m_MaxRetryCount
CCassandraFullscanRunner()
CCassandraFullscanRunner & SetConsumerCreationPolicy(ECassandraFullscanConsumerPolicy policy)
static constexpr unsigned int kMaxRetryCountDefault
CCassandraFullscanRunner & SetConsistency(CassConsistency value)
unsigned int GetMaxActiveStatements() const
void ApplyConfiguration(IRegistry const *registry, string const §ion)
CCassandraFullscanRunner & SetMaxActiveStatements(unsigned int value)
CCassandraFullscanRunner & SetThreadCount(size_t value)
size_t GetThreadCount() const
static constexpr size_t kThreadCountDefault
static constexpr string_view kConsistencyDefault
mutex m_ConsumerFactoryMutex
unsigned int GetMaxRetryCount() const
CCassandraFullscanRunner & SetMaxRetryCount(unsigned int max_retry_count)
TCassConsistency GetConsistency() const
CCassandraFullscanRunner & SetExecutionPlan(unique_ptr< ICassandraFullscanPlan > plan)
static constexpr unsigned int kMaxActiveStatementsDefault
ECassandraFullscanConsumerPolicy m_ConsumerCreationPolicy
TCassConsistency m_Consistency
static constexpr unsigned int kPageSizeDefault
unique_ptr< ICassandraFullscanPlan > m_ExecutionPlan
CCassandraFullscanRunner & SetPageSize(unsigned int value)
CCassandraFullscanWorker & SetMaxRetryCount(unsigned int max_retry_count)
function< CCassandraFullscanPlan::TQueryPtr()> TTaskProvider
CCassandraFullscanWorker & SetPageSize(unsigned int value)
CCassandraFullscanWorker & SetMaxActiveStatements(unsigned int value)
CCassandraFullscanWorker & SetConsumerCreationPolicy(ECassandraFullscanConsumerPolicy policy)
CCassandraFullscanWorker & SetTaskProvider(TTaskProvider provider)
CCassandraFullscanWorker & SetConsumerFactory(TCassandraFullscanConsumerFactory consumer_factory)
CCassandraFullscanWorker & SetConsistency(CassConsistency value)
virtual size_t GetQueryCount() const =0
virtual TQueryPtr GetNextQuery()=0
function< unique_ptr< ICassandraFullscanConsumer >()> TCassandraFullscanConsumerFactory
ECassandraFullscanConsumerPolicy
The NCBI C++ standard methods for dealing with std::string.
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
virtual int GetInt(const string §ion, const string &name, int default_value, TFlags flags=0, EErrAction err_action=eThrow) const
Get integer value of specified parameter name.
virtual string GetString(const string §ion, const string &name, const string &default_value, TFlags flags=0) const
Get the parameter string value.
const GenericPointer< typename T::ValueType > T2 value
BEGIN_IDBLOB_SCOPE USING_NCBI_SCOPE
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4