| 1303 | } |
| 1304 | |
| 1305 | std::string PhjBuilderPartition::DebugString() { |
| 1306 | stringstream ss; |
| 1307 | ss << "<Partition>: ptr=" << this << " id=" << id_; |
| 1308 | if (IsClosed()) { |
| 1309 | ss << " Closed"; |
| 1310 | return ss.str(); |
| 1311 | } |
| 1312 | if (is_spilled()) { |
| 1313 | ss << " Spilled"; |
| 1314 | } |
| 1315 | DCHECK(build_rows() != nullptr); |
| 1316 | ss << endl |
| 1317 | << " Build Rows: " << build_rows_->num_rows() |
| 1318 | << " (Bytes pinned: " << build_rows_->BytesPinned(false) << ")" |
| 1319 | << endl; |
| 1320 | if (hash_tbl_ != nullptr) { |
| 1321 | ss << " Hash Table Rows: " << hash_tbl_->size(); |
| 1322 | } |
| 1323 | ss << " Spilled Probe Rows: " << num_spilled_probe_rows_.Load() << endl; |
| 1324 | return ss.str(); |
| 1325 | } |
| 1326 | |
| 1327 | void PhjBuilderConfig::Codegen(FragmentState* state) { |
| 1328 | LlvmCodeGen* codegen = state->codegen(); |
no test coverage detected