jackrabbit-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Jackrabbit Wiki] Update of "DataStore" by ThomasMueller
Date Mon, 07 Dec 2009 08:42:59 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jackrabbit Wiki" for change notification.

The "DataStore" page has been changed by ThomasMueller.
The comment on this change is: TOC.
http://wiki.apache.org/jackrabbit/DataStore?action=diff&rev1=56&rev2=57

--------------------------------------------------

+ == Data Store ==
+ 
+ <<TableOfContents>>
+ 
  == Overview ==
  
  The data store is optionally used to store large binary values. Normally all node and property
data is stored in a persistence manager, but for large binaries such as files special treatment
can improve performance and reduce disk usage.
@@ -38, +42 @@

  
  Because the data store is append-only, the File``Data``Store is guaranteed to be consistent
after a crash (unlike the Bundle``Fs``Persistence``Manager). It is usually faster than the
Db``Data``Store, and the preferred choice unless you have strict operational reasons to put
everything into a database.
  
- ==== Configuration ====
+ === Configuration ===
  
  This is a full configuration using the default values:
  
@@ -61, +65 @@

  
  When adding a record, by default the stream is first copied to a temporary file. If you
get the exception "Can not insert new record java.io.IOException: No space left on device"
that means your temporary directory is too small. The reason for the temp file is: most databases
need to know the stream size when adding a record, and the JCR API doesn't provide a way to
do that. The mechanism used to add a record depends on the property "storeStream" in resource
org/apache/jackrabbit/core/data/db/<databaseType>.properties. Implemented mechanisms
are: "tempFile" (default; create a temp file before adding a record), "-1" (use the length
-1 when adding the record; currently only supported by the H2 database), and "max" (use the
length Integer.MAX_VALUE).
  
- ==== Configuration ====
+ === Configuration ===
  
  Here is a possible configuration using the database data store:
  
@@ -91, +95 @@

   * tablePrefix: The table name prefix. The default is empty. Can be used to select an non-default
schema or catalog. The table name is constructed like this: ${tablePrefix}${schemaObjectPrefix}${tableName}
   * schemaObjectPrefix: The schema object prefix. The default is empty. Available from version
1.6+
  
- ==== Limitations ====
+ === Limitations ===
  
  MySQL does not support sending very large binaries from the JDBC driver to the database.
See also: http://bugs.mysql.com/bug.php?id=10859 and http://forums.mysql.com/read.php?10,258333,260405#msg-260405
.
  
@@ -139, +143 @@

  
  Data store garbage collection does not delete entries if the identifier is still in the
Java heap memory. To delete as many unreferenced entries as possible, call System.gc() a few
times before running the data store garbage collection. Please note System.gc() does not guarantee
all objects are garbage collected.
  
- ==== Running Data Store Garbage Collection (Jackrabbit 1.x) ====
+ === Running Data Store Garbage Collection (Jackrabbit 1.x) ===
  
  Running the garbage collection is currently a manual process. You can run this as a separate
thread concurrently to your application:
  
@@ -180, +184 @@

   1. Manually delete files with last modified date older than X
  
  
- ==== Running Data Store Garbage Collection (Jackrabbit 2.x) ====
+ === Running Data Store Garbage Collection (Jackrabbit 2.x) ===
  
  Running the garbage collection is currently a manual process. You can run this as a separate
thread concurrently to your application:
  

Mime
View raw message