<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <meta charset="UTF-8">
  <title>ORC 1.7.1 Released</title>
  <meta name="viewport" content="width=device-width,initial-scale=1">
  <meta name="generator" content="Jekyll v3.8.6">
  <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
  <link rel="stylesheet" href="/css/screen.css">
  <link rel="icon" type="image/x-icon" href="/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="/">Home</a>
  </li>
  <li class="">
    <a href="/releases/"><span class="show-on-mobiles">Rel</span>
                         <span class="hide-on-mobiles">Releases</span></a>
  </li>
  <li class="">
    <a href="/docs/"><span class="show-on-mobiles">Doc</span>
                     <span class="hide-on-mobiles">Documentation</span></a>
  </li>
  <li class="">
    <a href="/talks/"><span class="show-on-mobiles">Talk</span>
                      <span class="hide-on-mobiles">Talks</span></a>
  </li>
  <li class="current">
    <a href="/news/">News</a>
  </li>
  <li class="">
    <a href="/develop/"><span class="show-on-mobiles">Dev</span>
                        <span class="hide-on-mobiles">Develop</span></a>
  </li>
  <li class="">
    <a href="/help/">Help</a>
  </li>
</ul>

  </nav>
  <div class="grid">
    <div class="unit one-quarter center-on-mobiles">
      <h1>
        <a href="/">
          <span class="sr-only">Apache ORC</span>
          <img src="/img/logo.png" width="249" height="101" alt="ORC Logo">
        </a>
      </h1>
    </div>
    <nav class="main-nav unit three-quarters hide-on-mobiles">
      <ul>
  <li class="">
    <a href="/">Home</a>
  </li>
  <li class="">
    <a href="/releases/"><span class="show-on-mobiles">Rel</span>
                         <span class="hide-on-mobiles">Releases</span></a>
  </li>
  <li class="">
    <a href="/docs/"><span class="show-on-mobiles">Doc</span>
                     <span class="hide-on-mobiles">Documentation</span></a>
  </li>
  <li class="">
    <a href="/talks/"><span class="show-on-mobiles">Talk</span>
                      <span class="hide-on-mobiles">Talks</span></a>
  </li>
  <li class="current">
    <a href="/news/">News</a>
  </li>
  <li class="">
    <a href="/develop/"><span class="show-on-mobiles">Dev</span>
                        <span class="hide-on-mobiles">Develop</span></a>
  </li>
  <li class="">
    <a href="/help/">Help</a>
  </li>
</ul>

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


    <section class="news">
    <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 blog…</option>
    <option value="/news/">Home</option>
    <optgroup label="v1.x">
      
      <option value="/news/2024/05/14/ORC-2.0.1/">ORC 2.0.1 Released</option>
      
      <option value="/news/2024/05/13/add-shaoyun-and-yuanping/">Shaoyun Chen and Yuanping Wu added as committers</option>
      
      <option value="/news/2024/04/14/ORC-1.8.7/">ORC 1.8.7 Released</option>
      
      <option value="/news/2024/03/20/ORC-1.9.3/">ORC 1.9.3 Released</option>
      
      <option value="/news/2024/03/08/ORC-2.0.0/">ORC 2.0.0 Released</option>
      
      <option value="/news/2024/01/13/add-deshan/">Deshan Xiao added as committer</option>
      
      <option value="/news/2023/11/10/ORC-1.9.2/">ORC 1.9.2 Released</option>
      
      <option value="/news/2023/11/10/ORC-1.8.6/">ORC 1.8.6 Released</option>
      
      <option value="/news/2023/11/10/ORC-1.7.10/">ORC 1.7.10 Released</option>
      
      <option value="/news/2023/09/05/ORC-1.8.5/">ORC 1.8.5 Released</option>
      
      <option value="/news/2023/08/16/ORC-1.9.1/">ORC 1.9.1 Released</option>
      
      <option value="/news/2023/06/28/ORC-1.9.0/">ORC 1.9.0 Released</option>
      
      <option value="/news/2023/06/14/ORC-1.8.4/">ORC 1.8.4 Released</option>
      
      <option value="/news/2023/05/07/ORC-1.7.9/">ORC 1.7.9 Released</option>
      
      <option value="/news/2023/03/15/ORC-1.8.3/">ORC 1.8.3 Released</option>
      
      <option value="/news/2023/02/13/add-xin/">Xin Zhang added as committer</option>
      
      <option value="/news/2023/01/21/ORC-1.7.8/">ORC 1.7.8 Released</option>
      
      <option value="/news/2023/01/13/ORC-1.8.2/">ORC 1.8.2 Released</option>
      
      <option value="/news/2022/12/02/ORC-1.8.1/">ORC 1.8.1 Released</option>
      
      <option value="/news/2022/11/17/ORC-1.7.7/">ORC 1.7.7 Released</option>
      
      <option value="/news/2022/09/21/william-chair/">William Hyun elected as Chair</option>
      
      <option value="/news/2022/09/03/ORC-1.8.0/">ORC 1.8.0 Released</option>
      
      <option value="/news/2022/08/17/ORC-1.7.6/">ORC 1.7.6 Released</option>
      
      <option value="/news/2022/06/16/ORC-1.7.5/">ORC 1.7.5 Released</option>
      
      <option value="/news/2022/06/05/add-pavan/">Pavan Lanka added as committer</option>
      
      <option value="/news/2022/05/08/yiqun-pmc/">ORC adds Yiqun Zhang to PMC</option>
      
      <option value="/news/2022/04/15/ORC-1.7.4/">ORC 1.7.4 Released</option>
      
      <option value="/news/2022/04/14/ORC-1.6.14/">ORC 1.6.14 Released</option>
      
      <option value="/news/2022/03/05/add-quanlong/">Quanlong Huang added as committer</option>
      
      <option value="/news/2022/02/09/ORC-1.7.3/">ORC 1.7.3 Released</option>
      
      <option value="/news/2022/01/20/ORC-1.6.13/">ORC 1.6.13 Released</option>
      
      <option value="/news/2021/12/20/ORC-1.7.2/">ORC 1.7.2 Released</option>
      
      <option value="/news/2021/11/23/add-yiqun/">Yiqun Zhang added as committer</option>
      
      <option value="/news/2021/11/07/ORC-1.7.1/">ORC 1.7.1 Released</option>
      
      <option value="/news/2021/11/07/ORC-1.6.12/">ORC 1.6.12 Released</option>
      
      <option value="/news/2021/10/02/william-pmc/">ORC adds William Hyun to PMC</option>
      
      <option value="/news/2021/09/15/ORC-1.7.0/">ORC 1.7.0 Released</option>
      
      <option value="/news/2021/09/15/ORC-1.6.11/">ORC 1.6.11 Released</option>
      
      <option value="/news/2021/09/15/ORC-1.5.13/">ORC 1.5.13 Released</option>
      
      <option value="/news/2021/08/10/ORC-1.6.10/">ORC 1.6.10 Released</option>
      
      <option value="/news/2021/07/02/ORC-1.6.9/">ORC 1.6.9 Released</option>
      
      <option value="/news/2021/05/21/ORC-1.6.8/">ORC 1.6.8 Released</option>
      
      <option value="/news/2021/04/13/add-william/">William Hyun added as committer</option>
      
      <option value="/news/2021/02/08/panagiotis-pmc/">ORC adds Panagiotis Garefalakis to PMC</option>
      
      <option value="/news/2021/01/22/ORC-1.6.7/">ORC 1.6.7 Released</option>
      
      <option value="/news/2020/12/10/ORC-1.6.6/">ORC 1.6.6 Released</option>
      
      <option value="/news/2020/11/16/add-panagiotis/">Panagiotis Garefalakis added as committer</option>
      
      <option value="/news/2020/10/01/ORC-1.6.5/">ORC 1.6.5 Released</option>
      
      <option value="/news/2020/09/30/ORC-1.5.12/">ORC 1.5.12 Released</option>
      
      <option value="/news/2020/09/14/ORC-1.6.4/">ORC 1.6.4 Released</option>
      
      <option value="/news/2020/09/14/ORC-1.5.11/">ORC 1.5.11 Released</option>
      
      <option value="/news/2020/04/26/ORC-1.5.10/">ORC 1.5.10 Released</option>
      
      <option value="/news/2020/04/26/ORC-1.6.3/">ORC 1.6.3 Released</option>
      
      <option value="/news/2020/01/30/ORC-1.5.9/">ORC 1.5.9 Released</option>
      
      <option value="/news/2019/12/09/dongjoon-pmc/">ORC adds Dongjoon Hyun to PMC</option>
      
      <option value="/news/2019/12/09/ORC-1.4.5/">ORC 1.4.5 Released</option>
      
      <option value="/news/2019/11/24/ORC-1.6.2/">ORC 1.6.2 Released</option>
      
      <option value="/news/2019/11/24/ORC-1.5.8/">ORC 1.5.8 Released</option>
      
      <option value="/news/2019/10/26/ORC-1.6.1/">ORC 1.6.1 Released</option>
      
      <option value="/news/2019/10/26/ORC-1.5.7/">ORC 1.5.7 Released</option>
      
      <option value="/news/2019/09/03/ORC-1.6.0/">ORC 1.6.0 Released</option>
      
      <option value="/news/2019/06/27/ORC-1.5.6/">ORC 1.5.6 Released</option>
      
      <option value="/news/2019/06/10/renat-and-sandeep/">Renat Vailiullin and Sandeep More added as committers</option>
      
      <option value="/news/2019/03/14/ORC-1.5.5/">ORC 1.5.5 Released</option>
      
      <option value="/news/2019/01/11/gang-pmc/">ORC adds Gang Wu to PMC</option>
      
      <option value="/news/2019/01/10/add-dongjoon/">Dongjoon Hyun added as committer</option>
      
      <option value="/news/2018/12/21/ORC-1.5.4/">ORC 1.5.4 Released</option>
      
      <option value="/news/2018/09/25/ORC-1.5.3/">ORC 1.5.3 Released</option>
      
      <option value="/news/2018/06/29/ORC-1.5.2/">ORC 1.5.2 Released</option>
      
      <option value="/news/2018/05/25/ORC-1.5.1/">ORC 1.5.1 Released</option>
      
      <option value="/news/2018/05/14/ORC-1.5.0/">ORC 1.5.0 Released</option>
      
      <option value="/news/2018/05/14/ORC-1.4.4/">ORC 1.4.4 Released</option>
      
      <option value="/news/2018/03/27/add-xiening-and-gang/">Gang Wu and Xiening Dai added as committer</option>
      
      <option value="/news/2018/02/09/ORC-1.4.3/">ORC 1.4.3 Released</option>
      
      <option value="/news/2018/01/23/ORC-1.4.2/">ORC 1.4.2 Released</option>
      
      <option value="/news/2017/10/16/ORC-1.4.1/">ORC 1.4.1 Released</option>
      
      <option value="/news/2017/10/16/ORC-1.3.4/">ORC 1.3.4 Released</option>
      
      <option value="/news/2017/09/06/new-pmc/">ORC adds Eugene and Deepak to PMC</option>
      
      <option value="/news/2017/05/16/new-committer/">Deepak Majeti added as committer</option>
      
      <option value="/news/2017/05/08/ORC-1.4.0/">ORC 1.4.0 Released</option>
      
      <option value="/news/2017/02/21/ORC-1.3.3/">ORC 1.3.3 Released</option>
      
      <option value="/news/2017/02/13/ORC-1.3.2/">ORC 1.3.2 Released</option>
      
      <option value="/news/2017/02/03/ORC-1.3.1/">ORC 1.3.1 Released</option>
      
      <option value="/news/2017/01/23/ORC-1.3.0/">ORC 1.3.0 Released</option>
      
      <option value="/news/2017/01/04/gopal-on-pmc/">ORC adds Gopal Vijayaraghavan to PMC</option>
      
      <option value="/news/2016/12/15/new-committers/">ORC adds new committers</option>
      
      <option value="/news/2016/12/12/ORC-1.2.3/">ORC 1.2.3 Released</option>
      
      <option value="/news/2016/12/01/ORC-1.2.2/">ORC 1.2.2 Released</option>
      
      <option value="/news/2016/10/05/ORC-1.2.1/">ORC 1.2.1 Released</option>
      
      <option value="/news/2016/08/25/ORC-1.2.0/">ORC 1.2.0 Released</option>
      
      <option value="/news/2016/07/08/ORC-1.1.2/">ORC 1.1.2 Released</option>
      
      <option value="/news/2016/06/28/file-format-talk/">File format benchmark</option>
      
      <option value="/news/2016/06/13/ORC-1.1.1/">ORC 1.1.1 Released</option>
      
      <option value="/news/2016/06/10/ORC-1.1.0/">ORC 1.1.0 Released</option>
      
      <option value="/news/2016/01/25/ORC-1.0.0/">ORC 1.0.0 Released</option>
      
      <option value="/news/2015/11/19/aliaksei-on-pmc/">ORC adds Aliaksei Sandryhaila to PMC</option>
      
      <option value="/news/2015/06/26/new-logo/">ORC adopts new logo</option>
      
      <option value="/news/2015/05/11/new-committers/">ORC adds 7 committers</option>
      
      <option value="/news/2015/04/22/orc-as-tlp/">ORC becomes an Apache Top Level Project</option>
      
    </optgroup>
  </select>
</div>


      <div class="unit four-fifths">
        <article>
  <h2>
    ORC 1.7.1 Released
    <a href="/news/2021/11/07/ORC-1.7.1/" class="permalink" title="Permalink">∞</a>
  </h2>
  <span class="post-category">
    <span class="label">
      release
    </span>
  </span>
  <div class="post-meta">
    <span class="post-date">
      07 Nov 2021
    </span>
    <a href="https://people.apache.org/~dongjoon" class="post-author">
      <img src="https://people.apache.org/~dongjoon/dongjoon.png"
           class="avatar" alt="dongjoon avatar"
           width="24" height="24">
      dongjoon
    </a>
  </div>
  <div class="post-content">
    <p>The ORC team is excited to announce the release of ORC v1.7.1.</p>

<ul>
  <li>Released: 7 November 2021</li>
  <li>Source code: <a href="https://archive.apache.org/dist/orc/orc-1.7.1/orc-1.7.1.tar.gz">orc-1.7.1.tar.gz</a></li>
  <li><a href="https://archive.apache.org/dist/orc/orc-1.7.1/orc-1.7.1.tar.gz.asc">GPG Signature</a>
signed by <a href="https://downloads.apache.org/orc/KEYS">Dongjoon Hyun (34F0FC5C)</a></li>
  <li>Git tag: <a href="https://github.com/apache/orc/releases/tag/rel/release-1.7.1">rel/release-1.7.1</a></li>
  <li>Maven Central: <a href="https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache.orc%22%20AND%20v%3A%221.7.1%22">ORC 1.7.1</a></li>
  <li>SHA 256: <a href="https://archive.apache.org/dist/orc/orc-1.7.1/orc-1.7.1.tar.gz.sha256">65d71e571238cbcb…</a></li>
  <li>Fixed issues: <a href="https://issues.apache.org/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?jqlQuery=project+%3D+ORC+AND+status+%3D+Closed+AND+fixVersion+%3D+%221.7.1%22&amp;tempMax=500">ORC-1.7.1</a></li>
</ul>

<p>The bug fixes of ORC 1.7:</p>

<ul>
  <li><a href="https://issues.apache.org/jira/browse/ORC-879">ORC-879</a> Flaky Test for TestJsonReader</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1000">ORC-1000</a> Use Java 17 in GitHub Action</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1002">ORC-1002</a> Add java17 profile for Java17 unit testing</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1008">ORC-1008</a> Overflow detection code is incorrect in IntegerColumnStatisticsImpl</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1009">ORC-1009</a> [C++] Missing string include causes build failure with MSVC++</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1010">ORC-1010</a> Bump tzdata from tzdata-2020e-1.tar.xz to tzdata-2021b-1.tar.xz</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1011">ORC-1011</a> Activate <code class="highlighter-rouge">java17</code> profile automatically</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1015">ORC-1015</a> Update OrcFile.WriterOptions::memory javadoc</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1016">ORC-1016</a> Use <code class="highlighter-rouge">openssl@1.1</code> in GitHub Action MacOS CIs</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1024">ORC-1024</a> BloomFilter hash computation is inconsistent between Java and C++ clients</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1029">ORC-1029</a> Could not load ‘org.apache.orc.DataMask.Provider’ when using orc encryption and spark executor with multi cores!</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1030">ORC-1030</a> Java Tools Recover File command does not accurately find OrcFile.MAGIC</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1032">ORC-1032</a> Bump parquet.version from 1.12.0 to 1.12.2</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1034">ORC-1034</a> The search byte array algorithm is incorrectly implemented in FileDump.java</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1035">ORC-1035</a> <code class="highlighter-rouge">backupDataPath</code> may be incorrect in recoverFile</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1036">ORC-1036</a> Due to tzdata upgrade, the fixed download links in CI are often not working</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1037">ORC-1037</a> Bump spark.version from 3.1.2 to 3.2.0</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1039">ORC-1039</a> Make FileDump.recoverFile handle side files only if they exist</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1040">ORC-1040</a> Add Debian 11 docker test</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1042">ORC-1042</a> Ignore unused-function C++ compile warning on CentOS 7</li>
  <li><a href="https://issues.apache.org/jira/browse/ORC-1043">ORC-1043</a> Fix C++ conversion compilation error in CentOS 7</li>
</ul>


  </div>
</article>

      </div>

      <div class="unit one-fifth hide-on-mobiles">
  <aside>
    <ul>
      <li class="">
        <a href="/news/">All News</a>
      </li>
      <li class="">
        <a href="/news/releases/">ORC Releases</a>
      </li>
    </ul>
    <h4>Recent Releases</h4>
    <ul>
      
      <li class="">
        <a href="/news/2024/05/14/ORC-2.0.1/">Version 2.0.1</a>
      </li>
      
      <li class="">
        <a href="/news/2024/04/14/ORC-1.8.7/">Version 1.8.7</a>
      </li>
      
      <li class="">
        <a href="/news/2024/03/20/ORC-1.9.3/">Version 1.9.3</a>
      </li>
      
      <li class="">
        <a href="/news/2024/03/08/ORC-2.0.0/">Version 2.0.0</a>
      </li>
      
      <li class="">
        <a href="/news/2023/11/10/ORC-1.9.2/">Version 1.9.2</a>
      </li>
      
    </ul>
    <h4>Other News</h4>
    <ul>
        
        
        
        
        <li class="">
          <a href="/news/2024/05/13/add-shaoyun-and-yuanping/">Shaoyun Chen and Yuanping Wu added as committers</a>
        </li>
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2024/01/13/add-deshan/">Deshan Xiao added as committer</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2023/02/13/add-xin/">Xin Zhang added as committer</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2022/09/21/william-chair/">William Hyun elected as Chair</a>
        </li>
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2022/06/05/add-pavan/">Pavan Lanka added as committer</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2022/05/08/yiqun-pmc/">ORC adds Yiqun Zhang to PMC</a>
        </li>
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2022/03/05/add-quanlong/">Quanlong Huang added as committer</a>
        </li>
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2021/11/23/add-yiqun/">Yiqun Zhang added as committer</a>
        </li>
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2021/10/02/william-pmc/">ORC adds William Hyun to PMC</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2021/04/13/add-william/">William Hyun added as committer</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2021/02/08/panagiotis-pmc/">ORC adds Panagiotis Garefalakis to PMC</a>
        </li>
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2020/11/16/add-panagiotis/">Panagiotis Garefalakis added as committer</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2019/12/09/dongjoon-pmc/">ORC adds Dongjoon Hyun to PMC</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2019/06/10/renat-and-sandeep/">Renat Vailiullin and Sandeep More added as committers</a>
        </li>
        
        
        
        
        
        <li class="">
          <a href="/news/2019/01/11/gang-pmc/">ORC adds Gang Wu to PMC</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2019/01/10/add-dongjoon/">Dongjoon Hyun added as committer</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2018/03/27/add-xiening-and-gang/">Gang Wu and Xiening Dai added as committer</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2017/09/06/new-pmc/">ORC adds Eugene and Deepak to PMC</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2017/05/16/new-committer/">Deepak Majeti added as committer</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2017/01/04/gopal-on-pmc/">ORC adds Gopal Vijayaraghavan to PMC</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2016/12/15/new-committers/">ORC adds new committers</a>
        </li>
        
        
        
        
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2016/06/28/file-format-talk/">File format benchmark</a>
        </li>
        
        
        
        
        
        
        
        
        
        <li class="">
          <a href="/news/2015/11/19/aliaksei-on-pmc/">ORC adds Aliaksei Sandryhaila to PMC</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2015/06/26/new-logo/">ORC adopts new logo</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2015/05/11/new-committers/">ORC adds 7 committers</a>
        </li>
        
        
        
        <li class="">
          <a href="/news/2015/04/22/orc-as-tlp/">ORC becomes an Apache Top Level Project</a>
        </li>
        
        
    </ul>
  </aside>
</div>


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

    </div>
  </section>


  <footer role="contentinfo">
  <p style="margin-left: 20px; margin-right; 20px; text-align: center">The contents of this website are &copy;&nbsp;2024
     <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 ORC and its logo are trademarks
      of the Apache Software Foundation.</p>
</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>
