Hi,
I found out the solution by myself some time after my question: yes,
there is already a better replacement, which is the standard bundle
filesytem persistence manager.
There is a way to set it up using a memory filesystem... looks like
it's not really well documented, but after some digging into
jackrabbit sources I found out that setting the obscure
"blobFSBlockSize" property to 1 does the trick (not sure what the
value should mean, but I found out in the code that the value = 1 make
the persistence manager use the filesystem configured in the xml
config instead of a local filesystem).
This is a full working config that uses an in-memory BundleFsPersistenceManager:
<Workspace name="${wsp.name}">
<FileSystem class="org.apache.jackrabbit.core.fs.mem.MemoryFileSystem">
</FileSystem>
<PersistenceManager
class="org.apache.jackrabbit.core.persistence.bundle.BundleFsPersistenceManager">
<param name="blobFSBlockSize" value="1" /><!-- store in memory -->
</PersistenceManager>
<SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
[...]
<param name="directoryManagerClass"
value="org.apache.jackrabbit.core.query.lucene.directory.RAMDirectoryManager"
/>
<FileSystem class="org.apache.jackrabbit.core.fs.mem.MemoryFileSystem">
</FileSystem>
</SearchIndex>
</Workspace>
cheers
fabrizio
2011/2/10 Grégory Joseph <[email protected]>:
> Hi guys,
>
> Same question as Fabrizio below - is there an alternative, or any plan to
> have a non-deprecated InMemPersistenceManager ?
> (As long as it works, I shouldn't care much about the deprecatedness, but
> it's just clogging the logs, so I'd rather be sure I can really shunt those
> logs down during tests)
>
> Cheers,
>
> -g
>
> On 27 Dec 2010, at 20:35, Fabrizio Giustina wrote:
>
>> Hi,
>> after the deprecation of non-bundle persistence managers in 2.2 also
>> the memory-only implementation
>> (org.apache.jackrabbit.core.persistence.mem.InMemPersistenceManager)
>> has been deprecated and its usage generates leads to a few warnings in
>> the log.
>>
>> I am currently using the in-memory pm mainly for testing, and I can't
>> see any alternative, non deprecated implementation in the 2.2
>> release... is the removal of the memory PM intentional? Any plan for
>> adding a "bundle" implementation?
>>
>>
>> thanks
>> fabrizio
>
>
>