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

Function HandleNSScan

src/cmd/fedb.cc:1655–1848  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1653}
1654
1655void HandleNSScan(const std::vector<std::string>& parts,
1656 ::fedb::client::NsClient* client) {
1657 if (parts.size() < 5) {
1658 std::cout
1659 << "scan format error. eg: scan table_name pk start_time end_time "
1660 "[limit] | scan table_name key key_name start_time end_time "
1661 "[limit] | scan table_name=xxx key=xxx index_name=xxx st=xxx "
1662 "et=xxx ts_name=xxx [limit=xxx] [atleast=xxx]"
1663 << std::endl;
1664 return;
1665 }
1666 std::map<std::string, std::string> parameter_map;
1667 if (!GetParameterMap("table_name", parts, "=", parameter_map)) {
1668 std::cout << "scan table_name=xxx key=xxx index_name=xxx st=xxx et=xxx "
1669 "ts_name=xxx [limit=xxx] [atleast=xxx]"
1670 << std::endl;
1671 return;
1672 }
1673 bool is_pair_format = parameter_map.empty() ? false : true;
1674 std::string table_name;
1675 std::string key;
1676 std::string index_name;
1677 uint64_t st = 0;
1678 uint64_t et = 0;
1679 std::string ts_name;
1680 uint32_t limit = 0;
1681 uint32_t atleast = 0;
1682 auto iter = parameter_map.begin();
1683 try {
1684 if (is_pair_format) {
1685 iter = parameter_map.find("table_name");
1686 if (iter != parameter_map.end()) {
1687 table_name = iter->second;
1688 } else {
1689 std::cout << "scan format error: table_name does not exist!"
1690 << std::endl;
1691 return;
1692 }
1693 iter = parameter_map.find("key");
1694 if (iter != parameter_map.end()) {
1695 key = iter->second;
1696 } else {
1697 std::cout << "scan format error: key does not exist!"
1698 << std::endl;
1699 return;
1700 }
1701 iter = parameter_map.find("index_name");
1702 if (iter != parameter_map.end()) {
1703 index_name = iter->second;
1704 }
1705 iter = parameter_map.find("st");
1706 if (iter != parameter_map.end()) {
1707 st = boost::lexical_cast<uint64_t>(iter->second);
1708 } else {
1709 std::cout << "scan format error: st does not exist!"
1710 << std::endl;
1711 return;
1712 }

Callers 1

StartNsClientFunction · 0.85

Calls 9

GetParameterMapFunction · 0.85
hash64Function · 0.85
GetTabletClientFunction · 0.85
ShowTableRowsFunction · 0.85
resetMethod · 0.80
sizeMethod · 0.45
emptyMethod · 0.45
ShowTableMethod · 0.45
ScanMethod · 0.45

Tested by

no test coverage detected