提交 4ab7caf6 authored 作者: Thomas Mueller's avatar Thomas Mueller

Documentation / update performance results.

上级 d189325c
...@@ -17,11 +17,15 @@ Change Log ...@@ -17,11 +17,15 @@ Change Log
<h1>Change Log</h1> <h1>Change Log</h1>
<h2>Changes in Version 1.4 Beta (unreleased)</h2> <h2>Next Version (unreleased)</h2>
<ul><li>-
</li></ul>
<h2>Version 1.4.176 Beta (2014-04-11)</h2>
<ul><li>By default, the MV_STORE option is enabled, so it is using the new MVStore <ul><li>By default, the MV_STORE option is enabled, so it is using the new MVStore
storage. The MVCC setting is by default set to the same values as the MV_STORE setting, storage. The MVCC setting is by default set to the same values as the MV_STORE setting,
so it is also enabled by default. For testing, both settings can be disabled by appending so it is also enabled by default. For testing, both settings can be disabled by appending
";MV_STORE=FALSE" / ";MVCC=FALSE" to the database URL. ";MV_STORE=FALSE" and/or ";MVCC=FALSE" to the database URL.
</li><li>The file locking method 'serialized' is no longer supported. </li><li>The file locking method 'serialized' is no longer supported.
This mode might return in a future version, This mode might return in a future version,
however this is not clear right now. however this is not clear right now.
...@@ -42,10 +46,7 @@ Change Log ...@@ -42,10 +46,7 @@ Change Log
</li><li>Remove support for the limited old-style outer join syntax using "(+)". </li><li>Remove support for the limited old-style outer join syntax using "(+)".
Use "outer join" instead. Use "outer join" instead.
System property "h2.oldStyleOuterJoin". System property "h2.oldStyleOuterJoin".
</li></ul> </li><li>Support the data type "DATETIME2" as an alias for "DATETIME", for MS SQL Server compatibility.
<h2>Next Version (unreleased)</h2>
<ul><li>Support the data type "DATETIME2" as an alias for "DATETIME", for MS SQL Server compatibility.
</li><li>Add Oracle-compatible TRANSLATE function, patch by Eric Chatellier. </li><li>Add Oracle-compatible TRANSLATE function, patch by Eric Chatellier.
</li></ul> </li></ul>
...@@ -391,32 +392,5 @@ Change Log ...@@ -391,32 +392,5 @@ Change Log
</li><li>Serialization is now pluggable using the system property "h2.javaObjectSerializer". Thanks to Sergi Vladykin for the patch! </li><li>Serialization is now pluggable using the system property "h2.javaObjectSerializer". Thanks to Sergi Vladykin for the patch!
</li></ul> </li></ul>
<h2>Version 1.3.169 (2012-09-09)</h2>
<ul><li>The default jar file is now compiled for Java 6.
</li><li>The new jar file will probably not end up in the central Maven repository
in the next few weeks because Sonatype has disabled automatic synchronization
from SourceForge (which they call 'legacy sync' now).
It will probably take some time until this is sorted out. The H2 jar files are deployed to
http://h2database.com/m2-repo/com/h2database/h2/maven-metadata.xml
and http://hsql.sourceforge.net/m2-repo/com/h2database/h2/maven-metadata.xml
as usual.
</li><li>A part of the documentation and the H2 Console has been changed to support the Apple retina display.
</li><li>The CreateCluster tool could not be used if the source database contained a CLOB or BLOB.
The root cause was that the TCP server did not synchronize on the session, which caused a problem
when using the exclusive mode.
</li><li>Statement.getQueryTimeout(): only the first call to this method will query the database.
If the query timeout was changed in another way than calling setQueryTimeout,
this method will always return the last value. This was changed because Hibernate
calls getQueryTimeout() a lot.
</li><li>Issue 416: PreparedStatement.setNString throws AbstractMethodError.
All implemented JDBC 4 methods that don't break compatibility with Java 5
are now included in the default jar file.
</li><li>Issue 414: for some functions, the parameters were evaluated twice
(for example "char(nextval(..))" ran "nextval(..)" twice).
</li><li>The ResultSetMetaData methods getSchemaName and getTableName
could return null instead of "" (an empty string) as specified in the JDBC API.
</li><li>Added compatibility for "SET NAMES" query in MySQL compatibility mode.</li>
</ul>
<!-- [close] { --></div></td></tr></table><!-- } --><!-- analytics --></body></html> <!-- [close] { --></div></td></tr></table><!-- } --><!-- analytics --></body></html>
...@@ -17,7 +17,7 @@ Downloads ...@@ -17,7 +17,7 @@ Downloads
<h1>Downloads</h1> <h1>Downloads</h1>
<h3>Version ${version} (${versionDate})</h3> <h3>Version ${version} (${versionDate}), Beta</h3>
<p> <p>
<a href="http://www.h2database.com/h2-setup-${versionDate}.exe">Windows Installer</a> <a href="http://www.h2database.com/h2-setup-${versionDate}.exe">Windows Installer</a>
<!-- sha1Exe --><br /> <!-- sha1Exe --><br />
......
...@@ -35,7 +35,7 @@ Welcome to H2, the Java SQL database. The main features of H2 are: ...@@ -35,7 +35,7 @@ Welcome to H2, the Java SQL database. The main features of H2 are:
<table style="border: 0px; margin: 0px 7px 12px 7px;"> <table style="border: 0px; margin: 0px 7px 12px 7px;">
<tr><td style="border: 0px; background-color: #eee;" colspan="2"> <tr><td style="border: 0px; background-color: #eee;" colspan="2">
<h2 style="margin-top: 1em;">Download</h2> <h2 style="margin-top: 1em;">Download</h2>
Version ${version} (${versionDate}) Version ${version} (${versionDate}), Beta
</td></tr> </td></tr>
<tr><td style="border: 0px; background-color: #eee;"> <tr><td style="border: 0px; background-color: #eee;">
<a href="http://www.h2database.com/h2-setup-${versionDate}.exe"><img src="images/download-2.png" alt="Download this database" width="22" height="22"/></a> <a href="http://www.h2database.com/h2-setup-${versionDate}.exe"><img src="images/download-2.png" alt="Download this database" width="22" height="22"/></a>
......
...@@ -607,8 +607,8 @@ The fields of the chunk header and footer are: ...@@ -607,8 +607,8 @@ The fields of the chunk header and footer are:
Chunks are never updated in-place. Each chunk contains the pages that were Chunks are never updated in-place. Each chunk contains the pages that were
changed in that version (there is one chunk per version, see above), changed in that version (there is one chunk per version, see above),
plus all the parent nodes of those pages, recursively, up to the root page. plus all the parent nodes of those pages, recursively, up to the root page.
If an entry in a map is changed, removed, or added, then the respective page is copied If an entry in a map is changed, removed, or added, then the respective page is copied,
to be stored in the next chunk, and the number of live pages in the old chunk is decremented. modified, and stored in the next chunk, and the number of live pages in the old chunk is decremented.
This mechanism is called copy-on-write, and is similar to how the This mechanism is called copy-on-write, and is similar to how the
<a href="https://en.wikipedia.org/wiki/Btrfs">Btrfs</a> file system works. <a href="https://en.wikipedia.org/wiki/Btrfs">Btrfs</a> file system works.
Chunks without live pages are marked as free, so the space can be re-used by more recent chunks. Chunks without live pages are marked as free, so the space can be re-used by more recent chunks.
...@@ -651,7 +651,8 @@ and <a href="https://en.wikipedia.org/wiki/Variable-length_quantity">variable si ...@@ -651,7 +651,8 @@ and <a href="https://en.wikipedia.org/wiki/Variable-length_quantity">variable si
</li><li>mapId (variable size int): The id of the map this page belongs to. </li><li>mapId (variable size int): The id of the map this page belongs to.
</li><li>len (variable size int): The number of keys in the page. </li><li>len (variable size int): The number of keys in the page.
</li><li>type (byte): The page type (0 for leaf page, 1 for internal node; </li><li>type (byte): The page type (0 for leaf page, 1 for internal node;
plus 2 if the keys and values are compressed). plus 2 if the keys and values are compressed with the LZF algorithm, or
plus 6 if the keys and values are compressed with the Deflate algorithm).
</li><li>children (array of long; internal nodes only): The position of the children. </li><li>children (array of long; internal nodes only): The position of the children.
</li><li>childCounts (array of variable size long; internal nodes only): </li><li>childCounts (array of variable size long; internal nodes only):
The total number of entries for the given child page. The total number of entries for the given child page.
...@@ -684,7 +685,7 @@ and when a page is marked as removed, the live maximum length is adjusted. ...@@ -684,7 +685,7 @@ and when a page is marked as removed, the live maximum length is adjusted.
This allows to estimate the amount of free space within a block, in addition to the number of free pages. This allows to estimate the amount of free space within a block, in addition to the number of free pages.
</p> </p>
<p> <p>
The total number of entries in child nodes are kept to allow efficient range counting, The total number of entries in child pages are kept to allow efficient range counting,
lookup by index, and skip operations. lookup by index, and skip operations.
The pages form a <a href="http://www.chiark.greenend.org.uk/~sgtatham/algorithms/cbtree.html">counted B-tree</a>. The pages form a <a href="http://www.chiark.greenend.org.uk/~sgtatham/algorithms/cbtree.html">counted B-tree</a>.
</p> </p>
......
...@@ -49,54 +49,54 @@ the per-statement overhead is greatly reduced. ...@@ -49,54 +49,54 @@ the per-statement overhead is greatly reduced.
<h3>Embedded</h3> <h3>Embedded</h3>
<table class="main"> <table class="main">
<tr><th>Test Case</th><th>Unit</th><th>H2</th><th>HSQLDB</th><th>Derby</th></tr> <tr><th>Test Case</th><th>Unit</th><th>H2</th><th>HSQLDB</th><th>Derby</th></tr>
<tr><td>Simple: Init</td><td>ms</td><td>241</td><td>431</td><td>1027</td></tr> <tr><td>Simple: Init</td><td>ms</td><td>1019</td><td>1907</td><td>8280</td></tr>
<tr><td>Simple: Query (random)</td><td>ms</td><td>193</td><td>267</td><td>748</td></tr> <tr><td>Simple: Query (random)</td><td>ms</td><td>1304</td><td>873</td><td>1912</td></tr>
<tr><td>Simple: Query (sequential)</td><td>ms</td><td>89</td><td>179</td><td>658</td></tr> <tr><td>Simple: Query (sequential)</td><td>ms</td><td>835</td><td>1839</td><td>5415</td></tr>
<tr><td>Simple: Update (random)</td><td>ms</td><td>406</td><td>772</td><td>12175</td></tr> <tr><td>Simple: Update (sequential)</td><td>ms</td><td>961</td><td>2333</td><td>21759</td></tr>
<tr><td>Simple: Delete (sequential)</td><td>ms</td><td>155</td><td>266</td><td>6281</td></tr> <tr><td>Simple: Delete (sequential)</td><td>ms</td><td>950</td><td>1922</td><td>32016</td></tr>
<tr><td>Simple: Memory Usage</td><td>MB</td><td>7</td><td>13</td><td>16</td></tr> <tr><td>Simple: Memory Usage</td><td>MB</td><td>21</td><td>10</td><td>8</td></tr>
<tr><td>BenchA: Init</td><td>ms</td><td>200</td><td>251</td><td>1075</td></tr> <tr><td>BenchA: Init</td><td>ms</td><td>919</td><td>2133</td><td>7528</td></tr>
<tr><td>BenchA: Transactions</td><td>ms</td><td>1071</td><td>1458</td><td>8142</td></tr> <tr><td>BenchA: Transactions</td><td>ms</td><td>1219</td><td>2297</td><td>8541</td></tr>
<tr><td>BenchA: Memory Usage</td><td>MB</td><td>8</td><td>14</td><td>12</td></tr> <tr><td>BenchA: Memory Usage</td><td>MB</td><td>12</td><td>15</td><td>7</td></tr>
<tr><td>BenchB: Init</td><td>ms</td><td>787</td><td>1584</td><td>4163</td></tr> <tr><td>BenchB: Init</td><td>ms</td><td>905</td><td>1993</td><td>8049</td></tr>
<tr><td>BenchB: Transactions</td><td>ms</td><td>465</td><td>875</td><td>2744</td></tr> <tr><td>BenchB: Transactions</td><td>ms</td><td>1091</td><td>583</td><td>1165</td></tr>
<tr><td>BenchB: Memory Usage</td><td>MB</td><td>17</td><td>13</td><td>10</td></tr> <tr><td>BenchB: Memory Usage</td><td>MB</td><td>17</td><td>11</td><td>8</td></tr>
<tr><td>BenchC: Init</td><td>ms</td><td>348</td><td>225</td><td>922</td></tr> <tr><td>BenchC: Init</td><td>ms</td><td>2491</td><td>4003</td><td>8064</td></tr>
<tr><td>BenchC: Transactions</td><td>ms</td><td>1382</td><td>865</td><td>3527</td></tr> <tr><td>BenchC: Transactions</td><td>ms</td><td>1979</td><td>803</td><td>2840</td></tr>
<tr><td>BenchC: Memory Usage</td><td>MB</td><td>12</td><td>20</td><td>11</td></tr> <tr><td>BenchC: Memory Usage</td><td>MB</td><td>19</td><td>22</td><td>9</td></tr>
<tr><td>Executed statements</td><td>#</td><td>322929</td><td>322929</td><td>322929</td></tr> <tr><td>Executed statements</td><td>#</td><td>1930995</td><td>1930995</td><td>1930995</td></tr>
<tr><td>Total time</td><td>ms</td><td>5337</td><td>7173</td><td>41462</td></tr> <tr><td>Total time</td><td>ms</td><td>13673</td><td>20686</td><td>105569</td></tr>
<tr><td>Statements per second</td><td>#</td><td>60507</td><td>45020</td><td>7788</td></tr> <tr><td>Statements per second</td><td>#</td><td>141226</td><td>93347</td><td>18291</td></tr>
</table> </table>
<h3>Client-Server</h3> <h3>Client-Server</h3>
<table class="main"> <table class="main">
<tr><th>Test Case</th><th>Unit</th><th>H2</th><th>HSQLDB</th><th>Derby</th><th>PostgreSQL</th><th>MySQL</th></tr> <tr><th>Test Case</th><th>Unit</th><th>H2 (Server)</th><th>HSQLDB</th><th>Derby</th><th>PostgreSQL</th><th>MySQL</th></tr>
<tr><td>Simple: Init</td><td>ms</td><td>1715</td><td>2096</td><td>3008</td><td>3093</td><td>3084</td></tr> <tr><td>Simple: Init</td><td>ms</td><td>16338</td><td>17198</td><td>27860</td><td>30156</td><td>29409</td></tr>
<tr><td>Simple: Query (random)</td><td>ms</td><td>2615</td><td>2119</td><td>4450</td><td>3201</td><td>3313</td></tr> <tr><td>Simple: Query (random)</td><td>ms</td><td>3399</td><td>2582</td><td>6190</td><td>3315</td><td>3342</td></tr>
<tr><td>Simple: Query (sequential)</td><td>ms</td><td>2531</td><td>1944</td><td>4019</td><td>3163</td><td>3295</td></tr> <tr><td>Simple: Query (sequential)</td><td>ms</td><td>21841</td><td>18699</td><td>42347</td><td>30774</td><td>32611</td></tr>
<tr><td>Simple: Update (random)</td><td>ms</td><td>1862</td><td>2486</td><td>13929</td><td>4404</td><td>4391</td></tr> <tr><td>Simple: Update (sequential)</td><td>ms</td><td>6913</td><td>7745</td><td>28576</td><td>32698</td><td>11350</td></tr>
<tr><td>Simple: Delete (sequential)</td><td>ms</td><td>778</td><td>1118</td><td>7032</td><td>1682</td><td>1882</td></tr> <tr><td>Simple: Delete (sequential)</td><td>ms</td><td>8051</td><td>9751</td><td>42202</td><td>44480</td><td>16555</td></tr>
<tr><td>Simple: Memory Usage</td><td>MB</td><td>8</td><td>14</td><td>18</td><td>1</td><td>2</td></tr> <tr><td>Simple: Memory Usage</td><td>MB</td><td>22</td><td>11</td><td>9</td><td>0</td><td>1</td></tr>
<tr><td>BenchA: Init</td><td>ms</td><td>1264</td><td>1686</td><td>2734</td><td>2867</td><td>3225</td></tr> <tr><td>BenchA: Init</td><td>ms</td><td>12996</td><td>14720</td><td>24722</td><td>26375</td><td>26060</td></tr>
<tr><td>BenchA: Transactions</td><td>ms</td><td>5998</td><td>6829</td><td>14323</td><td>11491</td><td>10571</td></tr> <tr><td>BenchA: Transactions</td><td>ms</td><td>10134</td><td>10250</td><td>18452</td><td>21453</td><td>15877</td></tr>
<tr><td>BenchA: Memory Usage</td><td>MB</td><td>9</td><td>18</td><td>14</td><td>1</td><td>2</td></tr> <tr><td>BenchA: Memory Usage</td><td>MB</td><td>13</td><td>15</td><td>9</td><td>0</td><td>1</td></tr>
<tr><td>BenchB: Init</td><td>ms</td><td>5571</td><td>7553</td><td>11636</td><td>12226</td><td>12553</td></tr> <tr><td>BenchB: Init</td><td>ms</td><td>15264</td><td>16889</td><td>28546</td><td>31610</td><td>29747</td></tr>
<tr><td>BenchB: Transactions</td><td>ms</td><td>1931</td><td>3417</td><td>3435</td><td>2407</td><td>2149</td></tr> <tr><td>BenchB: Transactions</td><td>ms</td><td>3017</td><td>3376</td><td>1842</td><td>2771</td><td>1433</td></tr>
<tr><td>BenchB: Memory Usage</td><td>MB</td><td>18</td><td>16</td><td>13</td><td>2</td><td>2</td></tr> <tr><td>BenchB: Memory Usage</td><td>MB</td><td>17</td><td>12</td><td>11</td><td>1</td><td>1</td></tr>
<tr><td>BenchC: Init</td><td>ms</td><td>1333</td><td>968</td><td>1769</td><td>1693</td><td>2645</td></tr> <tr><td>BenchC: Init</td><td>ms</td><td>14020</td><td>10407</td><td>17655</td><td>19520</td><td>17532</td></tr>
<tr><td>BenchC: Transactions</td><td>ms</td><td>6508</td><td>4330</td><td>7910</td><td>7564</td><td>6108</td></tr> <tr><td>BenchC: Transactions</td><td>ms</td><td>5076</td><td>3160</td><td>6411</td><td>6063</td><td>4530</td></tr>
<tr><td>BenchC: Memory Usage</td><td>MB</td><td>12</td><td>21</td><td>14</td><td>2</td><td>2</td></tr> <tr><td>BenchC: Memory Usage</td><td>MB</td><td>19</td><td>21</td><td>11</td><td>1</td><td>1</td></tr>
<tr><td>Executed statements</td><td>#</td><td>322929</td><td>322929</td><td>322929</td><td>322929</td><td>322929</td></tr> <tr><td>Executed statements</td><td>#</td><td>1930995</td><td>1930995</td><td>1930995</td><td>1930995</td><td>1930995</td></tr>
<tr><td>Total time</td><td>ms</td><td>32106</td><td>34546</td><td>74245</td><td>53791</td><td>53216</td></tr> <tr><td>Total time</td><td>ms</td><td>117049</td><td>114777</td><td>244803</td><td>249215</td><td>188446</td></tr>
<tr><td>Statements per second</td><td>#</td><td>10058</td><td>9347</td><td>4349</td><td>6003</td><td>6068</td></tr> <tr><td>Statements per second</td><td>#</td><td>16497</td><td>16823</td><td>7887</td><td>7748</td><td>10246</td></tr>
</table> </table>
<h3>Benchmark Results and Comments</h3> <h3>Benchmark Results and Comments</h3>
<h4>H2</h4> <h4>H2</h4>
<p> <p>
Version 1.2.137 (2010-06-06) was used for the test. Version 1.4.177 (2014-04-11) was used for the test.
For most operations, the performance of H2 is about the same as for HSQLDB. For most operations, the performance of H2 is about the same as for HSQLDB.
One situation where H2 is slow is large result sets, because they are buffered to One situation where H2 is slow is large result sets, because they are buffered to
disk if more than a certain number of records are returned. disk if more than a certain number of records are returned.
...@@ -105,14 +105,14 @@ The advantage of buffering is: there is no limit on the result set size. ...@@ -105,14 +105,14 @@ The advantage of buffering is: there is no limit on the result set size.
<h4>HSQLDB</h4> <h4>HSQLDB</h4>
<p> <p>
Version 2.0.0 was used for the test. Version 2.3.2 was used for the test.
Cached tables are used in this test (<code>hsqldb.default_table_type=cached</code>), Cached tables are used in this test (<code>hsqldb.default_table_type=cached</code>),
and the write delay is 1 second (<code>SET WRITE_DELAY 1</code>). and the write delay is 1 second (<code>SET WRITE_DELAY 1</code>).
</p> </p>
<h4>Derby</h4> <h4>Derby</h4>
<p> <p>
Version 10.6.1.0 was used for the test. Derby is clearly the slowest embedded database in this test. Version 10.10.1.1 was used for the test. Derby is clearly the slowest embedded database in this test.
This seems to be a structural problem, because all operations are really slow. This seems to be a structural problem, because all operations are really slow.
It will be hard for the developers of Derby to improve the performance to a reasonable level. It will be hard for the developers of Derby to improve the performance to a reasonable level.
A few problems have been identified: leaving autocommit on is a problem for Derby. A few problems have been identified: leaving autocommit on is a problem for Derby.
...@@ -129,7 +129,7 @@ than half as fast as H2 in default mode. ...@@ -129,7 +129,7 @@ than half as fast as H2 in default mode.
<h4>PostgreSQL</h4> <h4>PostgreSQL</h4>
<p> <p>
Version 8.4.4 was used for the test. Version 9.1.5 was used for the test.
The following options where changed in <code>postgresql.conf: The following options where changed in <code>postgresql.conf:
fsync = off, commit_delay = 1000</code>. fsync = off, commit_delay = 1000</code>.
PostgreSQL is run in server mode. PostgreSQL is run in server mode.
...@@ -138,7 +138,7 @@ The memory usage number is incorrect, because only the memory usage of the JDBC ...@@ -138,7 +138,7 @@ The memory usage number is incorrect, because only the memory usage of the JDBC
<h4>MySQL</h4> <h4>MySQL</h4>
<p> <p>
Version 5.1.47-community was used for the test. Version 5.1.65-log was used for the test.
MySQL was run with the InnoDB backend. MySQL was run with the InnoDB backend.
The setting <code>innodb_flush_log_at_trx_commit</code> The setting <code>innodb_flush_log_at_trx_commit</code>
(found in the <code>my.ini / my.cnf</code> file) was set to 0. Otherwise (and by default), MySQL is slow (found in the <code>my.ini / my.cnf</code> file) was set to 0. Otherwise (and by default), MySQL is slow
......
...@@ -31,6 +31,7 @@ See also <a href="build.html#providing_patches">Providing Patches</a>. ...@@ -31,6 +31,7 @@ See also <a href="build.html#providing_patches">Providing Patches</a>.
<h2>Version 1.4.x: Planned Changes</h2> <h2>Version 1.4.x: Planned Changes</h2>
<ul><li>Change license to MPL 2.0. <ul><li>Change license to MPL 2.0.
</li><li>Automatic migration from 1.3 databases to 1.4. </li><li>Automatic migration from 1.3 databases to 1.4.
</li><li>Option to disable the file name suffix somehow (issue 447).
</li></ul> </li></ul>
<h2>Priority 1</h2> <h2>Priority 1</h2>
......
...@@ -13,6 +13,8 @@ Initial Developer: H2 Group ...@@ -13,6 +13,8 @@ Initial Developer: H2 Group
function getVersion(build) { function getVersion(build) {
if (build == 64) { if (build == 64) {
return '1.0/version-1.0.' + build; return '1.0/version-1.0.' + build;
} else if (build >= 177) {
return '1.4.' + build;
} else if (build >= 146 && build != 147) { } else if (build >= 146 && build != 147) {
return '1.3.' + build; return '1.3.' + build;
} else if (build >= 120) { } else if (build >= 120) {
......
...@@ -40,6 +40,8 @@ input { ...@@ -40,6 +40,8 @@ input {
function getVersion(build) { function getVersion(build) {
if (build == 64) { if (build == 64) {
return '1.0/version-1.0.' + build; return '1.0/version-1.0.' + build;
} else if (build >= 177) {
return '1.4.' + build;
} else if (build >= 146 && build != 147) { } else if (build >= 146 && build != 147) {
return '1.3.' + build; return '1.3.' + build;
} else if (build >= 120) { } else if (build >= 120) {
......
...@@ -39,18 +39,18 @@ public class Build extends BuildBase { ...@@ -39,18 +39,18 @@ public class Build extends BuildBase {
* Run the benchmarks. * Run the benchmarks.
*/ */
public void benchmark() { public void benchmark() {
downloadUsingMaven("ext/hsqldb-2.0.0.jar", downloadUsingMaven("ext/hsqldb-2.3.2.jar",
"hsqldb", "hsqldb", "2.0.0", "org/hsqldb", "hsqldb", "2.3.2",
"c9d525ce1a464185e6b01c7de872127a06092673"); "970fd7b8f635e2c19305160459649569655b843c");
downloadUsingMaven("ext/derby-10.6.1.0.jar", downloadUsingMaven("ext/derby-10.10.1.1.jar",
"org/apache/derby", "derby", "10.6.1.0", "org/apache/derby", "derby", "10.10.1.1",
"01137cd636b0e3c22f0d273478adb58aa30e984a"); "09f6f910f0373adc1b23c10f9b4bb151b7e7449f");
downloadUsingMaven("ext/derbyclient-10.6.1.0.jar", downloadUsingMaven("ext/derbyclient-10.10.1.1.jar",
"org/apache/derby", "derbyclient", "10.6.1.0", "org/apache/derby", "derbyclient", "10.10.1.1",
"e7c6fbaca2ef4dbcad27fa7d8a9cd1ac0d1e4b00"); "42d5293b4ac5c5f082583c3564c10f78bd34a4cb");
downloadUsingMaven("ext/derbynet-10.6.1.0.jar", downloadUsingMaven("ext/derbynet-10.10.1.1.jar",
"org/apache/derby", "derbynet", "10.6.1.0", "org/apache/derby", "derbynet", "10.10.1.1",
"d5d9d7b783eeaef016be85c34d5c65d1e7cec764"); "912b08dca73663d4665e09cd317be1218412d93e");
downloadUsingMaven("ext/postgresql-8.3-603.jdbc3.jar", downloadUsingMaven("ext/postgresql-8.3-603.jdbc3.jar",
"postgresql", "postgresql", "8.3-603.jdbc3", "postgresql", "postgresql", "8.3-603.jdbc3",
"33d531c3c53055ddcbea3d88bfa093466ffef924"); "33d531c3c53055ddcbea3d88bfa093466ffef924");
...@@ -62,10 +62,10 @@ public class Build extends BuildBase { ...@@ -62,10 +62,10 @@ public class Build extends BuildBase {
String cp = "temp" + String cp = "temp" +
File.pathSeparator + "bin/h2" + getJarSuffix() + File.pathSeparator + "bin/h2" + getJarSuffix() +
File.pathSeparator + "ext/hsqldb.jar" + File.pathSeparator + "ext/hsqldb.jar" +
File.pathSeparator + "ext/hsqldb-2.0.0.jar" + File.pathSeparator + "ext/hsqldb-2.3.2.jar" +
File.pathSeparator + "ext/derby-10.6.1.0.jar" + File.pathSeparator + "ext/derby-10.10.1.1.jar" +
File.pathSeparator + "ext/derbyclient-10.6.1.0.jar" + File.pathSeparator + "ext/derbyclient-10.10.1.1.jar" +
File.pathSeparator + "ext/derbynet-10.6.1.0.jar" + File.pathSeparator + "ext/derbynet-10.10.1.1.jar" +
File.pathSeparator + "ext/postgresql-8.3-603.jdbc3.jar" + File.pathSeparator + "ext/postgresql-8.3-603.jdbc3.jar" +
File.pathSeparator + "ext/mysql-connector-java-5.1.6.jar"; File.pathSeparator + "ext/mysql-connector-java-5.1.6.jar";
StringList args = args("-Xmx128m", StringList args = args("-Xmx128m",
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论