<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <meta charset="UTF-8">
  <title>ORC adds Aliaksei Sandryhaila to PMC</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 adds Aliaksei Sandryhaila to PMC
    <a href="/news/2015/11/19/aliaksei-on-pmc/" class="permalink" title="Permalink">∞</a>
  </h2>
  <span class="post-category">
    <span class="label">
      team
    </span>
  </span>
  <div class="post-meta">
    <span class="post-date">
      19 Nov 2015
    </span>
    <a href="https://people.apache.org/~omalley" class="post-author">
      <img src="https://people.apache.org/~omalley/omalley.png"
           class="avatar" alt="omalley avatar"
           width="24" height="24">
      omalley
    </a>
  </div>
  <div class="post-content">
    <p>On behalf of the Apache ORC Project Management Committee (PMC), it gives
me great pleasure to announce that Aliaksei Sandryhaila has joined the Apache
ORC PMC. He has done lot of good work on ORC and I’m looking forward to
more.</p>

<p>Please join me in welcoming Aliaksei to ORC PMC!</p>

<p>Congratulations Aliaksei!</p>

  </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="current">
          <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>
