<?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 id="refresh_authorization">

  <title>REFRESH AUTHORIZATION Statement</title>

  <titlealts audience="PDF">

    <navtitle>REFRESH AUTHORIZATION</navtitle>

  </titlealts>

  <prolog>
    <metadata>
      <data name="Category" value="Impala"/>
      <data name="Category" value="SQL"/>
      <data name="Category" value="DDL"/>
      <data name="Category" value="Security"/>
    </metadata>
  </prolog>

  <conbody>

    <p>
      The <codeph>REFRESH AUTHORIZATION</codeph> statement explicitly refreshes authorization
      data, including privileges and principals. When there is an external update to
      authorization metadata, use this statement to force Impala to refresh its authorization
      data without having to wait for the Sentry polling or run <codeph>INVALIDATE
      METADATA</codeph>.
    </p>

    <p>
      Once issued, the <codeph>REFRESH AUTHORIZATION</codeph> statement cannot be cancelled.
    </p>

    <p>
      See <xref href="impala_authorization.xml#authorization">Impala Authorization</xref> for
      information on enabling and using authorization in Impala.
    </p>

    <p>
      <b>Syntax:</b>
    </p>

<codeblock>REFRESH AUTHORIZATION</codeblock>

    <p>
      <b>Usage notes:</b> If authorization is not enabled, Impala returns an error.
    </p>

    <p>
      <b>Added in:</b> Impala 3.2
    </p>

  </conbody>

</concept>
