| 61 | } |
| 62 | |
| 63 | void executeSubQueryWithoutResult(const String & query, ContextMutablePtr query_context, bool internal) |
| 64 | { |
| 65 | modifyQueryContext(query_context, internal); |
| 66 | |
| 67 | std::exception_ptr exception; |
| 68 | auto thread = ThreadFromGlobalPool([query_context = std::move(query_context), &query, internal, &exception]() { |
| 69 | try |
| 70 | { |
| 71 | CurrentThread::QueryScope query_scope{query_context}; |
| 72 | { |
| 73 | ReadBufferFromOwnString in(query); |
| 74 | NullWriteBuffer out; |
| 75 | executeQuery(in, out, /*allow_into_outfile=*/false, query_context, /*set_result_details=*/{}, std::nullopt, internal); |
| 76 | } |
| 77 | } |
| 78 | catch (...) |
| 79 | { |
| 80 | exception = constructException(query_context); |
| 81 | } |
| 82 | }); |
| 83 | thread.join(); |
| 84 | |
| 85 | if (exception) |
| 86 | std::rethrow_exception(exception); |
| 87 | } |
| 88 | |
| 89 | Block executeSubQueryWithOneRow(const String & query, ContextMutablePtr query_context, bool internal, bool tolerate_multi_rows) |
| 90 | { |
no test coverage detected