<!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-04-04 18:09:31 +0900 (Tue, 04 Apr 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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd">02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd</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">cache: support opening existing cache</pre></dd>
<dt style="clear: both; float: left; font-weight: bold; width: 8em">Modified files</dt>
<dd style="margin-left: 8.5em">
<ul>
<li><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757">lib/cache.c</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"> Modified: lib/cache.c (+108 -25)</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L23">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L24">24</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L25">25</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L26">26</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-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L27">27</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L28">28</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L29">29</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L87">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L88">88</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L89">89</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L90">90</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L91">91</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-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L92">92</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L93">93</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L94">94</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L95">95</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L96">96</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L97">97</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L98">98</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-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L99">99</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L100">100</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L101">101</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L102">102</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L103">103</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L104">104</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L105">105</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L106">106</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L107">107</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L108">108</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L109">109</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L110">110</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L111">111</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-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L112">112</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L113">113</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L114">114</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L115">115</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L116">116</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L117">117</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L118">118</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L119">119</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L120">120</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L123">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L124">124</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L125">125</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L126">126</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L127">127</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L128">128</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L129">129</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L130">130</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L143">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L144">144</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L145">145</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L146">146</a></span>
<span class="diff-line-number-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L147">147</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L148">148</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L149">149</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757L150">150</a></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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R23">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R24">24</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R25">25</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R26">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R27">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R28">28</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R29">29</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R30">30</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R31">31</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R89">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R90">90</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R91">91</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R92">92</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R93">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R94">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R95">95</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R96">96</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-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R97">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R98">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R99">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R100">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R101">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R102">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R103">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R104">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R105">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R106">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R107">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R108">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R109">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R110">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R111">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R112">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R113">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R114">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R115">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R116">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R117">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R118">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R119">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R120">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R121">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R122">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R123">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R124">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R125">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R126">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R127">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R128">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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R129">129</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R130">130</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R131">131</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R132">132</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R133">133</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R134">134</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R135">135</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R136">136</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R137">137</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R138">138</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R139">139</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R140">140</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R141">141</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R142">142</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R143">143</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R144">144</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R145">145</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R146">146</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R147">147</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R148">148</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R149">149</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R150">150</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R151">151</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R152">152</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R153">153</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R154">154</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R155">155</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R156">156</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R157">157</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R158">158</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R159">159</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R160">160</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R161">161</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R162">162</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R163">163</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R164">164</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R165">165</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R166">166</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R167">167</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R168">168</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-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R169">169</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R170">170</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R171">171</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R172">172</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R173">173</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R174">174</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R175">175</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R176">176</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R177">177</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R178">178</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R179">179</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R180">180</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R181">181</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R182">182</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R183">183</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R184">184</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R185">185</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R186">186</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R187">187</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R188">188</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R189">189</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R190">190</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R191">191</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R192">192</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R193">193</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R194">194</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R195">195</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R196">196</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R197">197</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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R198">198</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R199">199</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-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R200">200</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R201">201</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R202">202</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R203">203</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R206">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R207">207</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R208">208</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R209">209</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R210">210</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R211">211</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R212">212</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R213">213</a></span>
<span class="diff-line-number-hunk-header" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R226">...</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R227">227</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R228">228</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R229">229</a></span>
<span class="diff-line-number-nothing" style="display: block; white-space: pre"> </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/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R230">230</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R231">231</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R232">232</a></span>
<span class="diff-line-number-not-changed" style="display: block; white-space: pre"><a href="https://github.com/groonga/groonga/commit/02dd8e4e9ac43f7d4f20cefc2bf7768c487cfffd#diff-77dc4b01de73d3c8e529de2216371757R233">233</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">@@ -24,6 +24,8 @@</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> #include "grn_store.h"</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> #include "grn_db.h"</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> </span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+#include <sys/stat.h></span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> typedef struct _grn_cache_entry_memory grn_cache_entry_memory;</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> </span>
<span class="diff-not-changed" style="display: block; white-space: pre"> struct _grn_cache_entry_memory {</span>
<span class="diff-hunk-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">@@ -88,33 +90,114 @@ <span class="diff-context" style="background-color: #ffffaa; color: #000000">grn_cache_open_memory(grn_ctx *ctx, grn_cache *cache)</span></span>
<span class="diff-not-changed" style="display: block; white-space: pre"> }</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> </span>
<span class="diff-not-changed" style="display: block; white-space: pre"> inline static void</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">-grn_cache_open_persistent(grn_ctx *ctx, grn_cache *cache)</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+grn_cache_open_persistent(grn_ctx *ctx,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_cache *cache,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ const char *base_path)</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> {</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- cache->impl.persistent.keys =</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- grn_hash_create(cache->ctx,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- NULL,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- GRN_CACHE_MAX_KEY_SIZE,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- sizeof(grn_cache_entry_persistent),</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- GRN_OBJ_KEY_VAR_SIZE);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ char *keys_path = NULL;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ char *values_path = NULL;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ char keys_path_buffer[PATH_MAX];</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ char values_path_buffer[PATH_MAX];</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">+ if (base_path) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ struct stat stat_buffer;</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">+ grn_snprintf(keys_path_buffer, PATH_MAX, PATH_MAX, "%s.keys", base_path);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_snprintf(values_path_buffer, PATH_MAX, PATH_MAX, "%s.values", base_path);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ keys_path = keys_path_buffer;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ values_path = values_path_buffer;</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">+ if (stat(keys_path, &stat_buffer) == 0) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ cache->impl.persistent.keys = grn_hash_open(ctx, keys_path);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (cache->impl.persistent.keys) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ cache->impl.persistent.values = grn_ja_open(ctx, values_path);</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">+ }</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (!cache->impl.persistent.keys) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (cache->impl.persistent.values) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_ja_close(ctx, cache->impl.persistent.values);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ cache->impl.persistent.values = NULL;</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">+ if (stat(keys_path, &stat_buffer) == 0) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (grn_hash_remove(ctx, keys_path) != GRN_SUCCESS) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ ERRNO_ERR("[cache][persistent] "</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "failed to remove path for cache keys: <%s>",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ keys_path);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ return;</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">+ }</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (stat(values_path, &stat_buffer) == 0) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (grn_ja_remove(ctx, values_path) != GRN_SUCCESS) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ ERRNO_ERR("[cache][persistent] "</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "failed to remove path for cache values: <%s>",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ values_path);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ return;</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">+ }</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">+ }</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">+ if (!cache->impl.persistent.keys) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ cache->impl.persistent.keys =</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_hash_create(ctx,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ keys_path,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ GRN_CACHE_MAX_KEY_SIZE,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ sizeof(grn_cache_entry_persistent),</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ GRN_OBJ_KEY_VAR_SIZE);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (!cache->impl.persistent.keys) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ ERR(ctx->rc,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "[cache][persistent] failed to create cache keys storage: <%s>",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ keys_path ? keys_path : "(memory)");</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ return;</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">+ cache->impl.persistent.values =</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_ja_create(ctx,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ values_path,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ 1 << 16,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ 0);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (!cache->impl.persistent.values) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_hash_close(ctx, cache->impl.persistent.keys);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ ERR(ctx->rc,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "[cache][persistent] failed to create cache values storage: <%s>",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ values_path ? values_path : "(memory)");</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ return;</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">+ }</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> {</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> grn_cache_entry_persistent *entry;</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- /* TODO: validate ID == GRN_CACHE_PERSISTENT_ROOT_ID */</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- grn_hash_add(ctx,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- cache->impl.persistent.keys,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- GRN_CACHE_PERSISTENT_ROOT_KEY,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- GRN_CACHE_PERSISTENT_ROOT_KEY_LEN,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- (void **)&entry,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- NULL);</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- entry->next = GRN_CACHE_PERSISTENT_ROOT_ID;</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- entry->prev = GRN_CACHE_PERSISTENT_ROOT_ID;</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- entry->modified_time.tv_sec = 0;</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- entry->modified_time.tv_nsec = 0;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_id root_id;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ int added;</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">+ root_id = grn_hash_add(ctx,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ cache->impl.persistent.keys,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ GRN_CACHE_PERSISTENT_ROOT_KEY,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ GRN_CACHE_PERSISTENT_ROOT_KEY_LEN,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ (void **)&entry,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ &added);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (root_id != GRN_CACHE_PERSISTENT_ROOT_ID) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_ja_close(ctx, cache->impl.persistent.values);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_hash_close(ctx, cache->impl.persistent.keys);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (values_path) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_ja_remove(ctx, values_path);</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">+ if (keys_path) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_hash_remove(ctx, keys_path);</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">+ ERR(ctx->rc,</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ "[cache][persistent] broken cache keys storage: <%s>",</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ keys_path ? keys_path : "(memory)");</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ return;</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">+</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ if (added) {</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ entry->next = root_id;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ entry->prev = root_id;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ entry->modified_time.tv_sec = 0;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ entry->modified_time.tv_nsec = 0;</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ }</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> }</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- cache->impl.persistent.values =</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- grn_ja_create(cache->ctx,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- NULL,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- 1 << 16,</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- 0);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> cache->impl.persistent.timeout = 1000;</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> }</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> </span>
<span class="diff-hunk-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">@@ -124,7 +207,7 @@ <span class="diff-context" style="background-color: #ffffaa; color: #000000">grn_cache_open(grn_ctx *ctx)</span></span>
<span class="diff-not-changed" style="display: block; white-space: pre"> grn_cache *cache = NULL;</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> </span>
<span class="diff-not-changed" style="display: block; white-space: pre"> GRN_API_ENTER;</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- cache = GRN_<span class="diff-deleted-word" style="background-color: #f8cbcb; color: #000000">M</span>ALLOC(sizeof(grn_cache));</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ cache = GRN_<span class="diff-added-word" style="background-color: #a6f3a6; color: #000000">C</span>ALLOC(sizeof(grn_cache));</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> if (!cache) {</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> ERR(GRN_NO_MEMORY_AVAILABLE, "[cache] failed to allocate grn_cache");</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> goto exit;</span>
<span class="diff-hunk-header" style="background-color: #eaf2f5; color: #999999; display: block; white-space: pre">@@ -144,7 +227,7 @@ <span class="diff-context" style="background-color: #ffffaa; color: #000000">grn_cache_open(grn_ctx *ctx)</span></span>
<span class="diff-not-changed" style="display: block; white-space: pre"> if (cache->is_memory) {</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> grn_cache_open_memory(ctx, cache);</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> } else {</span>
<span class="diff-deleted" style="background-color: #ffecec; color: #000000; display: block; white-space: pre">- grn_cache_open_persistent(ctx, cache);</span>
<span class="diff-added" style="background-color: #eaffea; color: #000000; display: block; white-space: pre">+ grn_cache_open_persistent(ctx, cache<span class="diff-added-word" style="background-color: #a6f3a6; color: #000000">, NULL</span>);</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> }</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> if (ctx->rc != GRN_SUCCESS) {</span>
<span class="diff-not-changed" style="display: block; white-space: pre"> GRN_FREE(cache);</span>
</pre>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>