mirror of
https://github.com/apache/impala.git
synced 2025-12-30 03:01:44 -05:00
This now gives a clean RAT check with bin/check-rat-report.py, which is one way for the Impala community to check compliance with ASF rules on intellectual property. Change-Id: I2ad06435f84a65ba126759e42a18fdaf52cd7036 Reviewed-on: http://gerrit.cloudera.org:8080/5232 Reviewed-by: Jim Apple <jbapple-impala@apache.org> Tested-by: Impala Public Jenkins Reviewed-by: John Russell <jrussell@cloudera.com>
191 lines
7.9 KiB
XML
191 lines
7.9 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
|
|
<concept rev="1.2.1" id="timeouts">
|
|
|
|
<title>Setting Timeout Periods for Daemons, Queries, and Sessions</title>
|
|
|
|
<titlealts audience="PDF">
|
|
|
|
<navtitle>Setting Timeouts</navtitle>
|
|
|
|
</titlealts>
|
|
|
|
<prolog>
|
|
<metadata>
|
|
<data name="Category" value="Impala"/>
|
|
<data name="Category" value="Administrators"/>
|
|
<data name="Category" value="Scheduling"/>
|
|
<data name="Category" value="Scalability"/>
|
|
</metadata>
|
|
</prolog>
|
|
|
|
<conbody>
|
|
|
|
<p>
|
|
Depending on how busy your CDH cluster is, you might increase or decrease various timeout
|
|
values. Increase timeouts if Impala is cancelling operations prematurely, when the system
|
|
is responding slower than usual but the operations are still successful if given extra
|
|
time. Decrease timeouts if operations are idle or hanging for long periods, and the idle
|
|
or hung operations are consuming resources and reducing concurrency.
|
|
</p>
|
|
|
|
<p outputclass="toc inpage"/>
|
|
|
|
</conbody>
|
|
|
|
<concept id="statestore_timeout">
|
|
|
|
<title>Increasing the Statestore Timeout</title>
|
|
|
|
<conbody>
|
|
|
|
<p rev="IMP-1210">
|
|
If you have an extensive Impala schema, for example with hundreds of databases, tens of
|
|
thousands of tables, and so on, you might encounter timeout errors during startup as the
|
|
Impala catalog service broadcasts metadata to all the Impala nodes using the statestore
|
|
service. To avoid such timeout errors on startup, increase the statestore timeout value
|
|
from its default of 10 seconds. Specify the timeout value using the
|
|
<codeph>-statestore_subscriber_timeout_seconds</codeph> option for the statestore
|
|
service, using the configuration instructions in
|
|
<xref href="impala_config_options.xml#config_options"/>. The symptom of this problem is
|
|
messages in the <codeph>impalad</codeph> log such as:
|
|
</p>
|
|
|
|
<codeblock>Connection with state-store lost
|
|
Trying to re-register with state-store</codeblock>
|
|
|
|
<p>
|
|
See <xref href="impala_scalability.xml#statestore_scalability"/> for more details about
|
|
statestore operation and settings on clusters with a large number of Impala-related
|
|
objects such as tables and partitions.
|
|
</p>
|
|
|
|
</conbody>
|
|
|
|
</concept>
|
|
|
|
<concept id="impalad_timeout">
|
|
|
|
<title>Setting the Idle Query and Idle Session Timeouts for impalad</title>
|
|
|
|
<conbody>
|
|
|
|
<p>
|
|
To keep long-running queries or idle sessions from tying up cluster resources, you can
|
|
set timeout intervals for both individual queries, and entire sessions.
|
|
</p>
|
|
|
|
<note conref="../shared/impala_common.xml#common/timeout_clock_blurb"/>
|
|
|
|
<p>
|
|
Specify the following startup options for the <cmdname>impalad</cmdname> daemon:
|
|
</p>
|
|
|
|
<ul>
|
|
<li>
|
|
The <codeph>--idle_query_timeout</codeph> option specifies the time in seconds after
|
|
which an idle query is cancelled. This could be a query whose results were all fetched
|
|
but was never closed, or one whose results were partially fetched and then the client
|
|
program stopped requesting further results. This condition is most likely to occur in
|
|
a client program using the JDBC or ODBC interfaces, rather than in the interactive
|
|
<cmdname>impala-shell</cmdname> interpreter. Once the query is cancelled, the client
|
|
program cannot retrieve any further results.
|
|
</li>
|
|
|
|
<li>
|
|
The <codeph>--idle_session_timeout</codeph> option specifies the time in seconds after
|
|
which an idle session is expired. A session is idle when no activity is occurring for
|
|
any of the queries in that session, and the session has not started any new queries.
|
|
Once a session is expired, you cannot issue any new query requests to it. The session
|
|
remains open, but the only operation you can perform is to close it. The default value
|
|
of 0 means that sessions never expire.
|
|
</li>
|
|
</ul>
|
|
|
|
<p>
|
|
For instructions on changing <cmdname>impalad</cmdname> startup options, see
|
|
<xref href="impala_config_options.xml#config_options"/>.
|
|
</p>
|
|
|
|
<p rev="2.0.0">
|
|
You can reduce the idle query timeout by using the <codeph>QUERY_TIMEOUT_S</codeph>
|
|
query option. Any value specified for the <codeph>--idle_query_timeout</codeph> startup
|
|
option serves as an upper limit for the <codeph>QUERY_TIMEOUT_S</codeph> query option.
|
|
See <xref href="impala_query_timeout_s.xml#query_timeout_s"/> for details.
|
|
</p>
|
|
|
|
</conbody>
|
|
|
|
</concept>
|
|
<concept id="concept_rfy_jl1_rx">
|
|
<title>Setting Timeout and Retries for Thrift Connections to the Backend
|
|
Client</title>
|
|
<conbody>
|
|
<p>Impala connections to the backend client are subject to failure in
|
|
cases when the network is momentarily overloaded. To avoid failed
|
|
queries due to transient network problems, you can configure the number
|
|
of Thrift connection retries using the following option: </p>
|
|
<ul id="ul_bj3_ql1_rx">
|
|
<li>The <codeph>--backend_client_connection_num_retries</codeph> option
|
|
specifies the number of times Impala will try connecting to the
|
|
backend client after the first connection attempt fails. By default,
|
|
<cmdname>impalad</cmdname> will attempt three re-connections before
|
|
it returns a failure. </li>
|
|
</ul>
|
|
<p>You can configure timeouts for sending and receiving data from the
|
|
backend client. Therefore, if for some reason a query hangs, instead of
|
|
waiting indefinitely for a response, Impala will terminate the
|
|
connection after a configurable timeout.</p>
|
|
<ul id="ul_vm2_2v1_rx">
|
|
<li>The <codeph>--backend_client_rpc_timeout_ms</codeph> option can be
|
|
used to specify the number of milliseconds Impala should wait for a
|
|
response from the backend client before it terminates the connection
|
|
and signals a failure. The default value for this property is 300000
|
|
milliseconds, or 5 minutes. </li>
|
|
</ul>
|
|
</conbody>
|
|
</concept>
|
|
|
|
<concept id="cancel_query">
|
|
|
|
<title>Cancelling a Query</title>
|
|
|
|
<conbody>
|
|
|
|
<p>
|
|
Sometimes, an Impala query might run for an unexpectedly long time, tying up resources
|
|
in the cluster. You can cancel the query explicitly, independent of the timeout period,
|
|
by going into the web UI for the <cmdname>impalad</cmdname> host (on port 25000 by
|
|
default), and using the link on the <codeph>/queries</codeph> tab to cancel the running
|
|
query. Various client applications let you interactively cancel queries submitted or
|
|
monitored through those applications. For example, by pressing <codeph>^C</codeph> in
|
|
<cmdname>impala-shell</cmdname>, clicking the <uicontrol>Cancel</uicontrol> button from
|
|
the <uicontrol>Watch</uicontrol> page in Hue, clicking <uicontrol>Actions >
|
|
Cancel</uicontrol> from the <uicontrol>Queries</uicontrol> list in Cloudera Manager, and
|
|
so on.
|
|
</p>
|
|
|
|
</conbody>
|
|
|
|
</concept>
|
|
|
|
</concept>
|