Why did the query finish despite error "Join did not fit in memory"

I was carefully monitoring a running complex query and I saw a that it triggered an error message as per error_messages table: "Join did not fit in memory"

When I checked the dc_resource_acquisitions tables, I saw that the transaction failed to acquire additional memory "General cannot supply required overflow resources…"

But when I checked the query_requests table, I saw that the transaction had 2 statement_id's, 1 and 2, with the exact same query, in the same node, 1 had finished successfully (as per column "success=true"), 2 was still running. After a few minutes, statement_id 2 finished successfully as well.

(note: I made sure I was looking at the same transaction IDs across the system tables)

I validated and the query was successful.

How come there was an error message, but the query didn't stop? So not all error messages cause the query to stop? Or is this specific to memory acquisition issues?

Did vertica find a way to overcome the memory issue on its own? How?

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file