def test_cancellation(self, vector): impalad = ImpaladService(socket.getfqdn()) assert impalad.wait_for_num_in_flight_queries(0) command = "select sleep(10000);" p = ImpalaShell(vector) p.send_cmd(command) sleep(3) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "Cancelled" not in result.stderr assert impalad.wait_for_num_in_flight_queries(0) p = ImpalaShell(vector) sleep(3) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "^C" in result.stderr
def test_cancellation(self): impalad = ImpaladService(socket.getfqdn()) assert impalad.wait_for_num_in_flight_queries(0) command = "select sleep(10000);" p = ImpalaShell() p.send_cmd(command) sleep(3) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "Cancelled" not in result.stderr assert impalad.wait_for_num_in_flight_queries(0) p = ImpalaShell() sleep(3) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "^C" in result.stderr
def test_cancellation(self): """Test cancellation (Ctrl+C event).""" args = '-q "select sleep(10000)"' p = ImpalaShell(args) sleep(3) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "Cancelling Query" in result.stderr, result.stderr
def test_cancellation(self, vector): """Test cancellation (Ctrl+C event). Run a query that sleeps 10ms per row so will run for 110s if not cancelled, but will detect cancellation quickly because of the small batch size.""" query = "set num_nodes=1; set mt_dop=1; set batch_size=1; \ select sleep(10) from functional_parquet.alltypesagg" p = ImpalaShell(vector, ['-q', query]) p.wait_for_query_start() os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "Cancelling Query" in result.stderr, result.stderr
def run_and_verify_query_cancellation_test(self, vector, stmt, cancel_at_state): """Starts the execution of the received query, waits until the query execution in fact starts and then cancels it. Expects the query cancellation to succeed.""" p = ImpalaShell(vector, ['-q', stmt]) self.wait_for_query_state(vector, stmt, cancel_at_state) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "Cancelling Query" in result.stderr assert "Invalid or unknown query handle" not in result.stderr
def run_and_verify_query_cancellation_test(self, vector, stmt, cancel_at_state): """Starts the execution of the received query, waits until the query execution in fact starts and then cancels it. Expects the query cancellation to succeed.""" p = ImpalaShell(vector, ['-q', stmt]) self.wait_for_query_state(vector, stmt, cancel_at_state) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "Cancelling Query" in result.stderr assert "Invalid query handle" not in result.stderr
def run_and_verify_query_cancellation_test(self, stmt, cancel_at_state): """Starts the execution of the received query, waits until the query execution in fact starts and then cancels it. Expects the query cancellation to succeed.""" args = "-q \"" + stmt + ";\"" p = ImpalaShell(args, omit_stdout=True) self.wait_for_query_state(stmt, cancel_at_state) os.kill(p.pid(), signal.SIGINT) result = p.get_result() assert "Cancelling Query" in result.stderr assert "Invalid query handle" not in result.stderr