summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2010-12-02 14:37:59 -0800
committerEric Wong <normalperson@yhbt.net>2010-12-02 14:37:59 -0800
commit424f350415eccae19f08c2164b3e6ba6943fffb5 (patch)
tree655a11696dde10ed0cc57bca3a5d395c316d1306
parentcd3d6d573985cac087bd51f44bd8ad87b9e4e429 (diff)
We're not perfect, so don't raise expectations too high!
-rw-r--r--README22
1 files changed, 20 insertions, 2 deletions
diff --git a/README b/README
index b729ac6..5a5a4d3 100644
--- a/README
+++ b/README
@@ -8,13 +8,31 @@ write to the same databases used by Samba!
 == Features
 
 * Concurrent reader and writer processes may safely operate on the
-  same file.
+  same file.  This is great for MRI 1.8 and 1.9 where multi-core
+  performance is easiest to achieve processes and not threads.
 
-* Releases the GVL for slow disk operations under Ruby 1.9
+* Fork-safe, you may fork and share the same TDB object in your parent
+  and child processes.
+
+* Releases the GVL for slow disk operations under Ruby 1.9 so
+  other threads can run (but not other TDB operations on the same file)
 
 * Includes several {hash functions}[link:Hash_Functions.html]
   not included by upstream TDB.
 
+== Caveats
+
+These caveats will be addressed upstream in
+{TDB2}[http://mid.gmane.org/201008021002.47351.rusty@rustcorp.com.au]
+
+* NOT native thread-safe, you MUST protect your TDB object with a Mutex
+  if you run it with threads under Ruby 1.9 (but not 1.8).
+
+* Database size is limited to 4G, even on 64-bit systems.
+
+* TDB should be created with an appropriate :hash_size for large databases
+  or performance will suffer.
+
 == Install
 
 The original tdb library from the {main site}[http://tdb.samba.org/] is