MCPcopy Create free account
hub / github.com/4paradigm/OpenMLDB / HandleClientBenPut

Function HandleClientBenPut

src/cmd/fedb.cc:3425–3459  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3423}
3424
3425void HandleClientBenPut(std::vector<std::string>& parts, // NOLINT
3426 ::fedb::client::TabletClient* client) {
3427 try {
3428 uint32_t tid = boost::lexical_cast<uint32_t>(parts[1]);
3429 uint32_t pid = boost::lexical_cast<uint32_t>(parts[2]);
3430 uint64_t key_num = 1000000;
3431 if (parts.size() >= 4) {
3432 key_num = ::boost::lexical_cast<uint64_t>(parts[3]);
3433 }
3434 uint32_t times = 10000;
3435 if (parts.size() >= 5) {
3436 times = ::boost::lexical_cast<uint32_t>(parts[4]);
3437 }
3438 int num = 100;
3439 if (parts.size() >= 6) {
3440 num = ::boost::lexical_cast<int>(parts[5]);
3441 }
3442 std::string value(128, 'a');
3443 uint64_t base = 100000000;
3444 std::random_device rd;
3445 std::default_random_engine engine(rd());
3446 std::uniform_int_distribution<> dis(1, key_num);
3447 while (num > 0) {
3448 for (uint32_t i = 0; i < times; i++) {
3449 std::string key = std::to_string(base + dis(engine));
3450 uint64_t ts = ::baidu::common::timer::get_micros() / 1000;
3451 client->Put(tid, pid, key, ts, value);
3452 }
3453 client->ShowTp();
3454 num--;
3455 }
3456 } catch (boost::bad_lexical_cast& e) {
3457 std::cout << "put argument error!" << std::endl;
3458 }
3459}
3460
3461// the input format like create name tid pid ttl leader endpoints
3462void HandleClientCreateTable(const std::vector<std::string>& parts,

Callers 1

StartClientFunction · 0.85

Calls 4

to_stringFunction · 0.85
ShowTpMethod · 0.80
sizeMethod · 0.45
PutMethod · 0.45

Tested by

no test coverage detected