Errata corrige,

replce <FileSystem...> with this:
<DataStore class="org.apache.jackrabbit.core.data.FileDataStore">
        <param name="path" value="/mnt/NFS/global-datastore"/>
</DataStore>

-----Messaggio originale-----
Da: Raffaele Gambelli <r.gambe...@westpole.it> 
Inviato: mercoledì 28 agosto 2019 16:05
A: users@jackrabbit.apache.org
Oggetto: Jackrabbit 2.14.0 - db PersistenceManager minBlobSize and file 
DataStore minRecordLength

Hi all,

I need help to understand the ratio between db PersistenceManager minBlobSize 
and file DataStore minRecordLength, here follows my scenario:

I have a clustered environment using jackrabbit 2.14.0 with an Oracle 
PersistenceManager and a file DataStore in a NFS storage, applications running 
on Ubuntu.

Currently I have this configuration in my workspace.xml:

<FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
<param name="path" value="${wsp.home}"/> </FileSystem> <PersistenceManager 
class="org.apache.jackrabbit.core.persistence.pool.OraclePersistenceManager">
...
<param name="minBlobSize" value="16384"/> </PersistenceManager>

Documentation I found states that:

MIN RECORD LENGTH (from 
http://jackrabbit.apache.org/archive/wiki/JCR/DataStore_115513387.html):
The minimum object length. The default is 100 bytes; smaller objects are stored 
inline (not in the data store). Using a low value means more objects are kept 
in the data store (which may result in a smaller repository, if the same object 
is used in many places). Using a high value means less objects are stored in 
the datastore (which may result in better performance, because less datastore 
access is required). There is a limitation on the minRecordLength: the maximum 
value is around 32000. The reason for this is that Java doesn't support strings 
longer than 64 KB in writeUTF.

MIN BLOB SIZE 
(https://jackrabbit.apache.org/api/2.8/org/apache/jackrabbit/core/persistence/pool/BundleDbPersistenceManager.html
 setMinBlobSize method):
This size defines the threshold of which size a property is included in the 
bundle or is stored in the blob store.

So, given that I've not configured minRecordLength, it means I'm using its 
default, so 100 bytes.
But I have 16384 bytes configued as min blob size.

Is it correct what follows?
When a value (binary or not) is written, if it is less than 16384 bytes it 
finishes in database, otherwise it finishes in the file datastore. So if I'm 
right the default value of minRecordLenght is ignored? And what's happen if I 
would have minRecordLenght greater than minBlobSize to those file included 
between minBlobSize and minRecordLength?

Thanks for the clarification, best regards


[https://westpole.it/firma/logo.png]

Raffaele Gambelli
WebRainbow(r) Software Developer

P +39 051 8550 576
M #
E r.gambe...@westpole.it
W https://westpole.webex.com/meet/R.Gambelli
A Via Ettore Cristoni, 84 - 40030 Casalecchio di Reno

[https://westpole.it/firma/sito.png]<https://westpole.it>  
[https://westpole.it/firma/twitter.png] <https://twitter.com/WESTPOLE_SPA>   
[https://westpole.it/firma/linkedin.png] 
<https://www.linkedin.com/company/westpole/>

This email for the D.lgs.196/2003 (Privacy Code) and European Regulation 
679/2016/UE (GDPR) may contain confidential and/or privileged information for 
the exclusive use of the intended recipient. Any review or distribution by 
others is strictly prohibited. If you are not the intended recipient, you must 
not use, copy, disclose or take any action based on this message or any 
information here. If you have received this email in error, please contact us 
(email:priv...@westpole.it) by reply email and delete all copies. Legal 
privilege is not waived because you have read this email. Thank you for your 
cooperation.

[https://westpole.it/firma/ambiente.png] Please consider the environment before 
printing this email

Reply via email to