github-actions[bot] commented on code in PR #17704:
URL: https://github.com/apache/doris/pull/17704#discussion_r1157152564
##########
be/src/service/internal_service.cpp:
##########
@@ -556,6 +563,57 @@ void
PInternalServiceImpl::tablet_fetch_data(google::protobuf::RpcController* co
}
}
+void
PInternalServiceImpl::get_column_ids_by_tablet_ids(google::protobuf::RpcController*
controller,
+ const
PFetchColIdsRequest* request,
+ PFetchColIdsResponse*
response,
+
google::protobuf::Closure* done) {
+ brpc::ClosureGuard guard(done);
+ TabletManager* tablet_mgr = StorageEngine::instance()->tablet_manager();
+ const auto& params = request->params();
+ for (const auto& param : params) {
+ int64_t index_id = param.indexid();
+ auto tablet_ids = param.tablet_ids();
+ std::unordered_set<std::vector<TabletColumn>> filter_set;
+ for (const int64_t tablet_id : tablet_ids) {
+ TabletSharedPtr tablet = tablet_mgr->get_tablet(tablet_id);
+ if (tablet == nullptr) {
+ std::stringstream ss;
+ ss << "cannot get tablet by id:" << tablet_id;
+ LOG(WARNING) << ss.str();
+
response->mutable_status()->set_status_code(TStatusCode::ILLEGAL_STATE);
+ response->mutable_status()->add_error_msgs(ss.str());
+ return;
+ }
+ // check schema consistency, column ids should be the same
+ const auto& columns = tablet->tablet_schema()->columns();
+ std::vector<int32_t> column_ids(columns.size());
+ std::transform(columns.begin(), columns.end(), column_ids.begin(),
+ [](const TabletColumn& c) { return c.unique_id();
});
+ filter_set.insert(column_ids);
Review Comment:
warning: no matching member function for call to 'insert'
[clang-diagnostic-error]
```cpp
filter_set.insert(column_ids);
^
```
**/usr/include/c++/11/bits/unordered_set.h:420:** candidate function not
viable: no known conversion from 'vector<int32_t, allocator<int>>' to 'const
vector<doris::TabletColumn, allocator<doris::TabletColumn>>' for 1st argument
```cpp
insert(const value_type& __x)
^
```
**/usr/include/c++/11/bits/unordered_set.h:424:** candidate function not
viable: no known conversion from 'vector<int32_t, allocator<int>>' to
'vector<doris::TabletColumn, allocator<doris::TabletColumn>>' for 1st argument
```cpp
insert(value_type&& __x)
^
```
**/usr/include/c++/11/bits/unordered_set.h:479:** candidate function not
viable: no known conversion from 'std::vector<int32_t>' (aka 'vector<int>') to
'initializer_list<std::unordered_set<std::vector<doris::TabletColumn>>::value_type>'
(aka 'initializer_list<std::vector<doris::TabletColumn>>') for 1st argument
```cpp
insert(initializer_list<value_type> __l)
^
```
**/usr/include/c++/11/bits/unordered_set.h:498:** candidate function not
viable: no known conversion from 'std::vector<int32_t>' (aka 'vector<int>') to
'std::unordered_set<std::vector<doris::TabletColumn>>::node_type' (aka
'_Node_handle<std::vector<doris::TabletColumn>,
std::vector<doris::TabletColumn>,
allocator<std::__detail::_Hash_node<std::vector<doris::TabletColumn>, true>>>')
for 1st argument
```cpp
insert(node_type&& __nh)
^
```
**/usr/include/c++/11/bits/unordered_set.h:449:** candidate function not
viable: requires 2 arguments, but 1 was provided
```cpp
insert(const_iterator __hint, const value_type& __x)
^
```
**/usr/include/c++/11/bits/unordered_set.h:453:** candidate function not
viable: requires 2 arguments, but 1 was provided
```cpp
insert(const_iterator __hint, value_type&& __x)
^
```
**/usr/include/c++/11/bits/unordered_set.h:468:** candidate function
template not viable: requires 2 arguments, but 1 was provided
```cpp
insert(_InputIterator __first, _InputIterator __last)
^
```
**/usr/include/c++/11/bits/unordered_set.h:503:** candidate function not
viable: requires 2 arguments, but 1 was provided
```cpp
insert(const_iterator, node_type&& __nh)
^
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]