Make sure KILL QUERY statement can be executed when no query will be admitted. This is to show that KILL QUERY statements are not subject to admission control.
(self)
| 92 | @pytest.mark.execute_serially |
| 93 | @cluster_config.admit_no_query |
| 94 | def test_admit_no_query(self): |
| 95 | """ |
| 96 | Make sure KILL QUERY statement can be executed when no query will be admitted. |
| 97 | |
| 98 | This is to show that KILL QUERY statements are not subject to admission control. |
| 99 | """ |
| 100 | protocol = 'hs2' |
| 101 | with self.create_client_for_nth_impalad(0, protocol) as client: |
| 102 | try: |
| 103 | client.execute("SELECT 1") |
| 104 | except Exception as e: |
| 105 | expected_msg = ( |
| 106 | "Rejected query from pool default-pool: " |
| 107 | "disabled by requests limit set to 0" |
| 108 | ) |
| 109 | assert error_msg_startswith(str(e), expected_msg) |
| 110 | assert_kill_error( |
| 111 | client, |
| 112 | "Could not find query on any coordinator", |
| 113 | query_id="123:456" |
| 114 | ) |
| 115 | |
| 116 | |
| 117 | @CustomClusterTestSuite.with_args( |
nothing calls this directly
no test coverage detected