<!DOCTYPE html>
<html>
<head>
</head>
<body>
<dl style="line-height: 1.5; margin-left: 2em">
<dt style="clear: both; float: left; font-weight: bold; width: 8em">Author</dt>
<dd style="margin-left: 8.5em">Kouhei Sutou <kou****@clear*****></dd>
<dt style="clear: both; float: left; font-weight: bold; width: 8em">Date</dt>
<dd style="margin-left: 8.5em">2017-10-12 18:26:27 +0900 (Thu, 12 Oct 2017)</dd>
<dt style="clear: both; float: left; font-weight: bold; width: 8em">New Revision</dt>
<dd style="margin-left: 8.5em"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1">87980ea0aea34c3ff077812c7eef2be813c910e1</a></dd>
<dt style="clear: both; float: left; font-weight: bold; width: 8em">Message</dt>
<dd style="margin-left: 8.5em"><pre style="border: 1px solid #aaa; font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace; line-height: 1.2; padding: 0.5em; width: auto">Add a benchmark tool for creating index</pre></dd>
<dt style="clear: both; float: left; font-weight: bold; width: 8em">Added files</dt>
<dd style="margin-left: 8.5em">
<ul>
<li><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4">tools/groonga-benchmark-indexing.rb</a></li>
</ul>
</dd>
</dl>
<div class="diff-section" style="clear: both">
<table style="border-collapse: collapse; border: 1px solid #aaa">
<thead>
<tr class="diff-header" style="border: 1px solid #aaa">
<td colspan="3">
<pre style="border: 0; font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre"> Added: tools/groonga-benchmark-indexing.rb (+129 -0) 100755</span>
<span class="diff-header-mark" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">===================================================================</span>
</pre>
</td>
</tr>
</thead>
<tbody>
<tr>
<th class="diff-line-number" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4">...</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
</pre>
</th>
<th class="diff-line-number" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4">...</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R1">1</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R2">2</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R3">3</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R4">4</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R5">5</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R6">6</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R7">7</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R8">8</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R9">9</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R10">10</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R11">11</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R12">12</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R13">13</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R14">14</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R15">15</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R16">16</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R17">17</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R18">18</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R19">19</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R20">20</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R21">21</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R22">22</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R23">23</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R24">24</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R25">25</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R26">26</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R27">27</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R28">28</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R29">29</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R30">30</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R31">31</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R32">32</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R33">33</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R34">34</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R35">35</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R36">36</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R37">37</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R38">38</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R39">39</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R40">40</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R41">41</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R42">42</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R43">43</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R44">44</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R45">45</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R46">46</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R47">47</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R48">48</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R49">49</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R50">50</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R51">51</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R52">52</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R53">53</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R54">54</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R55">55</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R56">56</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R57">57</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R58">58</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R59">59</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R60">60</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R61">61</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R62">62</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R63">63</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R64">64</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R65">65</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R66">66</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R67">67</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R68">68</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R69">69</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R70">70</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R71">71</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R72">72</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R73">73</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R74">74</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R75">75</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R76">76</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R77">77</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R78">78</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R79">79</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R80">80</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R81">81</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R82">82</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R83">83</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R84">84</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R85">85</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R86">86</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R87">87</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R88">88</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R89">89</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R90">90</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R91">91</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R92">92</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R93">93</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R94">94</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R95">95</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R96">96</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R97">97</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R98">98</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R99">99</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R100">100</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R101">101</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R102">102</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R103">103</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R104">104</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R105">105</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R106">106</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R107">107</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R108">108</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R109">109</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R110">110</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R111">111</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R112">112</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R113">113</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R114">114</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R115">115</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R116">116</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R117">117</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R118">118</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R119">119</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R120">120</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R121">121</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R122">122</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R123">123</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R124">124</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R125">125</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R126">126</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R127">127</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R128">128</a></span>
<span class="diff-line-number-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/87980ea0aea34c3ff077812c7eef2be813c910e1#diff-64b2aa0521b0939037a227d07091edf4R129">129</a></span>
</pre>
</th>
<td class="diff-content" style="border: 1px solid #aaa">
<pre style="border: 0; font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace; line-height: 1.2; margin: 0; padding: 0.5em; white-space: normal; width: auto"><span class="diff-hunk-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">@@ -0,0 +1,129 @@</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+#!/usr/bin/env ruby</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+require "fileutils"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+require "json"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+require "optparse"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+class IndexingBenchmarker</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def initialize</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ @groonga = "groonga"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ @database_path = nil</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ @benchmark_database_dir = detect_benchmark_database_dir</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def run</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ catch(:run) do</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ parse_options!</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ dump_no_indexes = dump("dump-no-indexes.grn",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_indexes", "no")</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ dump_only_indexes = dump("dump-only-indexes.grn",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_plugins", "no",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_schema", "no",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_records", "no",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_configs", "no")</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ dump_no_records = dump("dump-no-records.grn",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_records", "no")</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ dump_only_records = dump("dump-only-records.grn",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_plugins", "no",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_schema", "no",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_indexes", "no",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--dump_configs", "no")</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ create_benchmark_database do</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ p [:load_record, measure(dump_no_indexes)]</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ p [:static_index_creation, measure(dump_only_indexes)]</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ create_benchmark_database do</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ p [:create_schema, measure(dump_no_records)]</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ p [:load_record_and_create_index, measure(dump_only_records)]</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ true</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ private</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def detect_benchmark_database_dir</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ candiates = [</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "/dev/shm",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "tmp",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ ]</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ candiates.find do |candidate|</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ File.exist?(candidate)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def benchmark_database_path</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "#{@benchmark_database_dir}/bench-db/db"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def parse_options!</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ option_parser = OptionParser.new do |parser|</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ parser.banner += " SOURCE_DATABASE"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ parser.on("--groonga=PATH",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "Use PATH as groonga command path") do |path|</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ @groonga = path</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ parser.on("--benchmark-database-dir=DIR",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "Use DIR to put benchmark database") do |dir|</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ @benchmark_database_dir = dir</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ @database_path, = option_parser.parse!(ARGV)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if @database_path.nil?</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ puts(option_parser)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ throw(:run)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def dump(path, *dump_options)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ return path if File.exist?(path)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ unless system(@groonga,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ @database_path,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "dump",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ *dump_options,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ :out => path)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ raise "failed to dump: #{dump_options.inspect}"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ path</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def create_benchmark_database</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ dir = File.dirname(benchmark_database_path)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ FileUtils.rm_rf(dir)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ FileUtils.mkdir_p(dir)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ system(@groonga,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "-n", benchmark_database_path,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "shutdown",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ :out => IO::NULL)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ begin</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ yield</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ ensure</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ FileUtils.rm_rf(dir)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ def measure(dump_path)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ result = "result"</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ begin</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ system(@groonga,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "--file", dump_path,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ benchmark_database_path,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ :out => result)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ File.open(result) do |output|</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ output.each_line.inject(0) do |result, line|</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ result + JSON.parse(line)[0][2]</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ ensure</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ FileUtils.rm_f(result)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+end</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+exit(IndexingBenchmarker.new.run)</span>
</pre>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>