<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <meta charset="UTF-8">
  <title>Go Client History</title>
  <meta name="viewport" content="width=device-width,initial-scale=1">
  <meta name="generator" content="Jekyll v3.7.3">
  <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
  <link rel="stylesheet" href="/avatica/css/screen.css">
  <link rel="icon" type="image/x-icon" href="/avatica/favicon.ico">
  <!--[if lt IE 9]>
  <script src="/js/html5shiv.min.js"></script>
  <script src="/js/respond.min.js"></script>
  <![endif]-->
</head>


<body class="wrap">
  <header role="banner">
  <nav class="mobile-nav show-on-mobiles">
    <ul>
  <li class="">
    <a href="/avatica/">Home</a>
  </li>
  <li class="">
    <a href="/avatica/downloads/">Download</a>
  </li>
  <li class="">
    <a href="/avatica/community/">Community</a>
  </li>
  <li class="">
    <a href="/avatica/develop/">Develop</a>
  </li>
  <li class="">
    <a href="/avatica/news/">News</a>
  </li>
  <li class="current">
    <a href="/avatica/docs/">Docs</a>
  </li>
</ul>

  </nav>
  <div class="grid">
    <div class="unit one-third center-on-mobiles">
      <h1>
        <a href="/avatica/">
          <span class="sr-only">Apache Calcite Avatica</span>
          <img src="/avatica/img/logo.png" width="226" height="140" alt="Calcite Logo">
        </a>
      </h1>
    </div>
    <nav class="main-nav unit two-thirds hide-on-mobiles">
      <ul>
  <li class="">
    <a href="/avatica/">Home</a>
  </li>
  <li class="">
    <a href="/avatica/downloads/">Download</a>
  </li>
  <li class="">
    <a href="/avatica/community/">Community</a>
  </li>
  <li class="">
    <a href="/avatica/develop/">Develop</a>
  </li>
  <li class="">
    <a href="/avatica/news/">News</a>
  </li>
  <li class="current">
    <a href="/avatica/docs/">Docs</a>
  </li>
</ul>

    </nav>
  </div>
</header>


    <section class="docs">
    <div class="grid">

      <div class="docs-nav-mobile unit whole show-on-mobiles">
  <select onchange="if (this.value) window.location.href=this.value">
    <option value="">Navigate the docs…</option>
    
    <optgroup label="Overview">
      


  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  


    </optgroup>
    
    <optgroup label="Avatica Reference">
      


  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  


    </optgroup>
    
    <optgroup label="Avatica Go Client Reference">
      


  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  


    </optgroup>
    
    <optgroup label="Avatica Meta">
      


  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  

  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  


    </optgroup>
    
    <optgroup label="Avatica Go Client Meta">
      


  

  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  


    </optgroup>
    
  </select>
</div>


      <div class="unit four-fifths">
        <article>
          <h1>Go Client History</h1>
          <!--

-->

<p>For a full list of releases, see
<a href="https://github.com/apache/calcite-avatica-go/releases">github</a>.
Downloads are available on the
<a href="/avatica/downloads/avatica-go.html">downloads page</a>.</p>

<h2 id="v5-0-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/v5.0.0">5.0.0</a> / 2020-07-16</h2>

<p>Apache Calcite Avatica Go 5.0.0 is a major release of Avatica Go with a number of improvements and a breaking change.
As Go modules has been available since Go 1.11 (3 versions back as of writing), users of this library should
install it using Go modules as support for dep has been removed.</p>

<p>This release also introduces the <code class="highlighter-rouge">batching</code> query string parameter in the DSN, which allows updates to the server using
a prepared statement to be batched together and executed once <code class="highlighter-rouge">Close()</code> is called on the statement.</p>

<p><strong>Breaking change for connection metadata (<a href="https://issues.apache.org/jira/browse/CALCITE-3248">CALCITE-3248</a>):</strong> 
Previously, it is possible to set the HTTP username and password using the <code class="highlighter-rouge">username</code> and <code class="highlighter-rouge">password</code> parameters in the
query string of the DSN. These parameters were confusing and didn’t signal the intent and effect of the parameters in addition
to clashing with the <code class="highlighter-rouge">avaticaUser</code> and <code class="highlighter-rouge">avaticaPassword</code> parameters. The <code class="highlighter-rouge">username</code> and <code class="highlighter-rouge">password</code> parameters have now been
removed as CALCITE-3248 implements the <a href="https://golang.org/pkg/database/sql/driver/#Connector">Connector interface</a> via the
<code class="highlighter-rouge">NewConnector()</code> method, which allows the driver to be instantiated with a custom HTTP client. Subsequently, it is now
possible to set up the driver with a custom HTTP client and decorate it with the <code class="highlighter-rouge">WithDigestAuth()</code>, <code class="highlighter-rouge">WithBasicAuth()</code>,
<code class="highlighter-rouge">WithKerberosAuth()</code> and <code class="highlighter-rouge">WithAdditionalHeaders()</code> methods.</p>

<p>Features and bug fixes</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3248">CALCITE-3248</a>]
Add Connector implementation and remove <code class="highlighter-rouge">username</code> and <code class="highlighter-rouge">password</code> query string parameters from DSN (Tino Rusch)</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3253">CALCITE-3253</a>]
Check server address exists before returning it in an Avatica response error (Tino Rusch)</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3264">CALCITE-3264</a>]
Add catch-all type for unknown types in all adapters instead of panicking (Tino Rusch)</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3275">CALCITE-3275</a>]
Add nil checks to error parsing (Tino Rusch)</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2499">CALCITE-2499</a>]
Drop support for dep</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3320">CALCITE-3320</a>]
Use transitional x/xerrors package when working with errors</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3903">CALCITE-3903</a>]
Upgrade protobuf generation dependencies and regenerate avatica protobufs</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3905">CALCITE-3905</a>]
Upgrade gokrb5 to v8</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3906">CALCITE-3906</a>]
Pin witch version in tools.go file</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-4067">CALCITE-4067</a>]
Add support for ExecuteBatchRequest in prepared statement (chenhualin)</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3359">CALCITE-3359</a>]
Update dependencies</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-4078">CALCITE-4078</a>]
Move import path from v4 to v5 for 5.0.0 release</li>
</ul>

<p>Tests</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3356">CALCITE-3356</a>]
Use Github Actions for continuous integration</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3902">CALCITE-3902</a>]
Upgrade Go to 1.13 and 1.14</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3904">CALCITE-3904</a>]
Upgrade Github Actions dependencies</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-4076">CALCITE-4076</a>]
Test against Avatica 1.17.0 and regenerate protobuf</li>
</ul>

<p>Web site and documentation:</p>

<ul>
  <li>Clean up documentation and remove references to dep</li>
</ul>

<h2 id="v4-0-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/v4.0.0">4.0.0</a> / 2019-05-16</h2>

<p>Apache Calcite Avatica Go 4.0.0 is a major release of Avatica Go with a number of improvements and a breaking change.
This release supports using both <a href="https://github.com/golang/dep">dep</a> and Go modules for package management. As Go modules
will be turned on by default in Go 1.13.0 (estimated to be released in September/October 2019), it is highly recommended
that users of this package start migrating to using Go modules to ease the transition.</p>

<p><strong>Breaking change for Phoenix (<a href="https://issues.apache.org/jira/browse/CALCITE-2724">CALCITE-2763</a>):</strong> 
In Apache Phoenix, null and empty strings are equivalent. For some background on why this is the case, see
<a href="https://issues.apache.org/jira/browse/PHOENIX-947">PHOENIX-947</a>. In version 3 of Avatica-Go and below, null and empty
strings are returned as an empty string <code class="highlighter-rouge">""</code> to the client. This prevented database/sql’s built in NullString type from
working correctly. From 4.0.0 onwards, null and empty strings will be returned as a <code class="highlighter-rouge">nil</code>. This allows the usage of the
<code class="highlighter-rouge">sql.NullString</code> type.</p>

<p>Features and bug fixes</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2723">CALCITE-2723</a>]
Generate SHA512 digest for releases</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2724">CALCITE-2724</a>]
Exclude .md files from import path check in release script to avoid false positives</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2579">CALCITE-2579</a>]
Implement live reloading of tests when source files change during development</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2763">CALCITE-2763</a>]
Fix handling of nils (nulls) when executing queries and scanning query results with empty strings and other null types</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2775">CALCITE-2775</a>]
Update dependencies and regenerate protobufs</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3024">CALCITE-3024</a>]
Update dependencies (April 26 2019)</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3032">CALCITE-3032</a>]
Simplify docker-compose.yml for running tests and development mode, change release process to use a docker container
to build in a clean environment and include automation for uploading and promoting releases</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3026">CALCITE-3026</a>]
Move import paths from v3 to v4 to prepare for 4.0.0 release</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3042">CALCITE-3042</a>]
Fix bug in docker release script that prevents releases from being promoted correctly and incorrect variable
substitution in vote email</li>
</ul>

<p>Tests</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2771">CALCITE-2771</a>]
Test against Avatica HSQLDB 1.13.0</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3025">CALCITE-3025</a>]
Update travis configuration and docker-compose to test against Go 1.12 and run tests using dep in Go 1.11 and Go 1.12</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3035">CALCITE-3035</a>]
Test against Avatica HSQLDB 1.14.0</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3044">CALCITE-3044</a>]
Test against Avatica HSQLDB 1.15.0 and simplify Alpine dependencies</li>
</ul>

<p>Web site and documentation:</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2774">CALCITE-2774</a>]
Improve release documentation and explicitly include all steps for making a release</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3033">CALCITE-3033</a>]
Move release process to separate HOWTO document so that it’s consistent with how the avatica docs are structured</li>
</ul>

<h2 id="v3-2-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/v3.2.0">3.2.0</a> / 2018-09-18</h2>

<p>Apache Calcite Avatica Go 3.2.0 is a minor release of Avatica Go with fixes to the import paths after enabling
support for Go modules.</p>

<p>The 3.1.0 release contained a bug where packages within the library used the <code class="highlighter-rouge">"github.com/apache/calcite-avatica-go"</code>
import path rather than the <code class="highlighter-rouge">"github.com/apache/calcite-avatica-go/v3"</code> import path. This resulted in an issue where
2 versions of the library are being used at the same time, causing some programs to not build.</p>

<p><strong>The Calcite team recommends consumers of the Avatica Go library to not use the 3.1.0 release and ensure that the
3.2.0 release is being used.</strong></p>

<p>Features and bug fixes</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2536">CALCITE-2536</a>]
Update release script to check that import paths within the library point to the correct version</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2545">CALCITE-2545</a>]
Fix incorrect import paths within the library to point to the correct version: github.com/apache/calcite-avatica-go/v3</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2544">CALCITE-2544</a>]
Replace the golang.org/x/net/context package with the context package in the standard library</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2547">CALCITE-2547</a>]
Update all dependencies to their latest versions</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2550">CALCITE-2550</a>]
Update release script to build tarballs with filenames in the format: apache-calcite-avatica-go-x.x.x-src.tar.gz</li>
</ul>

<h2 id="v3-1-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/v3.1.0">3.1.0</a> / 2018-09-10</h2>

<p>Apache Calcite Avatica Go 3.1.0 is a minor release of Avatica Go with support for Go modules.
We recommend using the latest stable version of Go.</p>

<p>Go 1.11 along with Go modules support was released at the end of August 2018. Go modules will become the
official package management solution for Go projects. As the Go team currently supports both Go 1.11 and Go 1.10,
the Gopkg.toml and Gopkg.lock files are still available for those using dep for package management. We plan to
remove support for dep when Go 1.12 is released in early 2019, so we encourage users to upgrade to Go 1.11 and use
Go modules where possible.</p>

<p>Features and bug fixes</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2333">CALCITE-2333</a>]
Stop releasing zip archives</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2367">CALCITE-2367</a>]
Remove the satori/go.uuid package as it is unmaintained and replace it with hashicorp/go-uuid which is already
a transitive dependency (Kenneth Shaw)</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2372">CALCITE-2372</a>]
Test against Apache Phoenix 4.14.0</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2493">CALCITE-2493</a>]
Update all dependencies to their latest versions</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2335">CALCITE-2335</a>]
Add support for Go modules (available since Go 1.11) and test against Go 1.11</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2500">CALCITE-2500</a>]
Test against Avatica 1.12.0 and Apache Phoenix 5.0.0 and regenerate protobuf definitions</li>
  <li>Fix release script</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2513">CALCITE-2513</a>]
Fix dockerfile so that Go modules work correctly when running tests using docker-compose</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2513">CALCITE-2531</a>]
Update release script to only include files in source control</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2533">CALCITE-2533</a>]
Allow user to select signing key when signing releases using release script</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2532">CALCITE-2532</a>]
Update release script to check ending copyright year in NOTICE file</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2534">CALCITE-2534</a>]
Update release script to check that AVATICA_VER are the same in both gen-protobuf.sh and gen-protobuf.bat</li>
  <li>Fix 3.1.0 release annoucement filename</li>
</ul>

<p>Web site and documentation</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2335">CALCITE-2335</a>]
Update documentation and release instructions to include support for Go modules.</li>
</ul>

<h2 id="v3-0-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/3.0.0">3.0.0</a> / 2018-04-27</h2>

<p>Apache Calcite Avatica Go 3.0.0 is the first release since the Go driver has been donated
to the Apache Software foundation.
We recommend using the latest stable version of Go.</p>

<p>Features and bug fixes</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-1240">CALCITE-1240</a>]
Intial import of the original <a href="https://github.com/Boostport/avatica">Boostport/avatica</a> code-base into the
<a href="https://github.com/apache/calcite-avatica-go">apache/calcite-avatica-go</a> repository</li>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-1938">CALCITE-1938</a>]
Releasing the first release of Calcite Avatica Go under the Apache Software Foundation</li>
  <li>Remove go-cleanhttp dependency</li>
  <li>Support for Avatica HSQLDB backend and move Apache Phoenix support into adapter</li>
  <li>Add bash script to automate releases with checks to alert on files without the Apache license header</li>
  <li>Replace gopher.png test fixture with Calcite logo</li>
</ul>

<p>Web site and documentation</p>

<ul>
  <li>[<a href="https://issues.apache.org/jira/browse/CALCITE-1937">CALCITE-1937</a>]
Set up Calcite Avatica Go website</li>
</ul>

<h2 id="past-releases">Past releases</h2>

<p>Prior to release 3.0.0, the Avatica Go client was developed by Boostport.</p>

<p>Please refer to the <a href="https://github.com/Boostport/avatica">Boostport/avatica</a> Github repository for previous releases
of the Avatica Go client.</p>

          





  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  

  
  
    <div class="section-nav">
      <div class="left align-right">
          
            
            
            <a href="/avatica/docs/api.html" class="prev">Previous</a>
          
      </div>
      <div class="right align-left">
          
            <span class="next disabled">Next</span>
          
      </div>
    </div>
    <div class="clear"></div>
    

        </article>
      </div>

      <div class="unit one-fifth hide-on-mobiles">
  <aside>
    
    <h4>Overview</h4>
    

<ul>

  
  
  
  

  

  <li class=""><a href="/avatica/docs/index.html">Background</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>


</ul>

    
    <h4>Avatica Reference</h4>
    

<ul>

  
  
  
  

  

  <li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/json_reference.html">JSON Reference</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/security.html">Security</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/compatibility.html">Compatibility</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/custom_client_artifacts.html">Custom Client Artifacts</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/docker.html">Docker Images</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/protocol_testing.html">Protocol Testing</a></li>


</ul>

    
    <h4>Avatica Go Client Reference</h4>
    

<ul>

  
  
  
  

  

  <li class=""><a href="/avatica/docs/go_client_reference.html">Go Client Reference</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/go_howto.html">HOWTO</a></li>


</ul>

    
    <h4>Avatica Meta</h4>
    

<ul>

  
  
  
  

  

  <li class=""><a href="/avatica/docs/history.html">History</a></li>


  
  
  
  

  

  <li class=""><a href="/avatica/docs/api/">API</a></li>


</ul>

    
    <h4>Avatica Go Client Meta</h4>
    

<ul>

  
  
  
  

  

  <li class="current"><a href="/avatica/docs/go_history.html">Go Client History</a></li>


</ul>

    
  </aside>
</div>


      <div class="clear"></div>

    </div>
  </section>


  <footer role="contentinfo">
  <div id="poweredby">
    <a href="http://www.apache.org/">
      <span class="sr-only">Apache</span>
      <img src="/avatica/img/feather.png" width="190" height="77" alt="Apache Logo"></a>
  </div>
  <div id="copyright">
  <p>The contents of this website are &copy;&nbsp;2020
     <a href="https://www.apache.org/">Apache Software Foundation</a>
     under the terms of
     the <a href="https://www.apache.org/licenses/LICENSE-2.0.html">
     Apache&nbsp;License&nbsp;v2</a>. Apache Calcite and its logo are
     trademarks of the Apache Software Foundation.</p>
  </div>
</footer>

  <script>
  var anchorForId = function (id) {
    var anchor = document.createElement("a");
    anchor.className = "header-link";
    anchor.href      = "#" + id;
    anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa fa-link\"></i>";
    anchor.title = "Permalink";
    return anchor;
  };

  var linkifyAnchors = function (level, containingElement) {
    var headers = containingElement.getElementsByTagName("h" + level);
    for (var h = 0; h < headers.length; h++) {
      var header = headers[h];

      if (typeof header.id !== "undefined" && header.id !== "") {
        header.appendChild(anchorForId(header.id));
      }
    }
  };

  document.onreadystatechange = function () {
    if (this.readyState === "complete") {
      var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
      if (!contentBlock) {
        return;
      }
      for (var level = 1; level <= 6; level++) {
        linkifyAnchors(level, contentBlock);
      }
    }
  };
</script>


</body>
</html>
