Hi Chris - <br><br>this looks great. For those of us who are more familiar with RDBMS vs. BDB, how much more abstraction is required to bring the BDB API up to the level of RDBMS? I'm not thinking of a SQL frontend to BDB, but more like having a easy mechanism (
e.g. single function call) to create tables, select records, insert records, etc.<br><br>Thanks,<br>yc<br><br><div><span class="gmail_quote">On 10/11/07, <b class="gmail_sendername">Chris Newcombe</b> <<a href="mailto:chris.newcombe@gmail.com">
chris.newcombe@gmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">I'd recommend using EDTK 1.5.1, available from here:
<br><br> <a href="http://www.snookles.com/erlang/edtk/">http://www.snookles.com/erlang/edtk/</a><br><br><br>> My question is how stable and complete is the library for Erlang?<br><br>Obviously I'm biased as I put a lot of work into updating EDTK
<br>precisely to make BDB support 'industrial strength'.<br><br>I've done a lot of testing (on linux only) and it appears to be stable<br>(indeed it comes with about 20 official patches for Berkeley DB from<br>
Oracle to fix bugs that I found during stress testing).<br><br>It is also mostly complete; all major BDB subsystems are supported,<br>including transactions, replication, full configuration, the 'stats'<br>APIs (which return internal metadata that is vital for performance
<br>tuning etc), distributed transactions (including a ready-to-roll<br>'Global Transaction Manager' server), and even replicated distributed<br>transactions :)<br><br>The test-suite is also quite comprehensive. Sadly some of the tests
<br>contain timers and timeouts that are somewhat hardware dependent -- it<br>passes on my test systems, but fails on machines that differ<br>significantly from those machines in performance.<br><br>> Can it be used for real life applications? Has some one used it?
<br><br>There are people building industrial systems with it, but<br>unfortunately can't give more details. Also, the Berkeley DB team at<br>Oracle is investigating whether to use it to enhance their own testing<br>of BDB-HA (replication), as Erlang makes distributed tests so much
<br>easier than other approaches.<br><br>> Also I could not find a proper usage documentation or at least an API.<br><br>Here is a fairly detailed introduction:<br><br> <a href="http://www.snookles.com/erlang/edtk/edtk-1.5.1.README-cnewcom">
http://www.snookles.com/erlang/edtk/edtk-1.5.1.README-cnewcom</a><br><br>There is also significant API documentation at the top of most of the<br>modules in examples/berkeley_db, all in the tarball. (Also there<br>are two stand alone short examples, with and without replication, that
<br>both have documentation.)<br><br> <a href="http://www.snookles.com/erlang/edtk/edtk-1.5.1.tar.gz">http://www.snookles.com/erlang/edtk/edtk-1.5.1.tar.gz</a><br><br>Here is some rationale and detail for the design and changes to EDTK
<br><br> <a href="http://www.snookles.com/erlang/edtk/EDTK_BerkeleyDB.pdf">http://www.snookles.com/erlang/edtk/EDTK_BerkeleyDB.pdf</a><br><br>Chris<br><br></blockquote></div>