Page 1 of 1

DataStoreGarbageCollector was working,but no file deleted

PostPosted:Tue Jan 05, 2010 7:14 am
by wangmj
----------------env-------------
Code: Select all
jdk1.6.0_16
windowsxp
openkm4.0 -jboss4.2.3GA
-----------------repository.xml-----------start----------
Code: Select all
<?xml version="1.0"?>
<Repository>
    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
        <param name="path" value="${rep.home}/repository"/>
    </FileSystem>
    <Security appName="OpenKM">
      <AccessManager class="es.git.openkm.core.OKMAccessManager"/> 
      <!-- <AccessManager class="org.apache.jackrabbit.core.security.SimpleAccessManager"/> -->
    </Security>
    <Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="default" />
    
    <Workspace name="${wsp.name}">
        <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
            <param name="path" value="${wsp.home}"/>
        </FileSystem>
        <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager">
            <param name="url" value="jdbc:derby:${wsp.home}/db;create=true"/>
            <param name="schemaObjectPrefix" value="${wsp.name}_"/>
        </PersistenceManager>
        <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
            <param name="path" value="${wsp.home}/index"/>
            <param name="useCompoundFile" value="true"/>
            <param name="minMergeDocs" value="100"/>
            <param name="volatileIdleTime" value="3"/>
            <param name="maxMergeDocs" value="100000"/>
            <param name="mergeFactor" value="10"/>
            <param name="bufferSize" value="10"/>
            <param name="cacheSize" value="1000"/>
            <param name="forceConsistencyCheck" value="false"/>
            <param name="autoRepair" value="true"/>
            <param name="analyzer" value="org.apache.lucene.analysis.standard.StandardAnalyzer"/>
            <param name="respectDocumentOrder" value="false"/>
            <param name="indexingConfiguration" value="${wsp.home}/../../../indexing_configuration.xml"/>
            <param name="textFilterClasses" value="
org.apache.jackrabbit.core.query.lucene.TextPlainTextFilter,
org.apache.jackrabbit.extractor.PdfTextExtractor,
org.apache.jackrabbit.extractor.HTMLTextExtractor,
org.apache.jackrabbit.extractor.XMLTextExtractor,
org.apache.jackrabbit.extractor.RTFTextExtractor,
org.apache.jackrabbit.extractor.OpenOfficeTextExtractor,
es.git.openkm.extractor.MsExcelTextExtractor,
es.git.openkm.extractor.MsPowerPointTextExtractor,
es.git.openkm.extractor.MsWordTextExtractor,
es.git.openkm.extractor.MsOffice2007TextExtractor,
es.git.openkm.extractor.ExifTextExtractor,
es.git.openkm.extractor.TiffTextExtractor,
es.git.openkm.extractor.AudioTextExtractor" />
        </SearchIndex>
    </Workspace>
    <Versioning rootPath="${rep.home}/version">
        <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
            <param name="path" value="${rep.home}/version"/>
        </FileSystem>
        <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager">
            <param name="url" value="jdbc:derby:${rep.home}/version/db;create=true"/>
            <param name="schemaObjectPrefix" value="version_"/>
        </PersistenceManager>
    </Versioning>
    <DataStore class="org.apache.jackrabbit.core.data.FileDataStore">
        <param name="path" value="${rep.home}/repository/datastore"/>
        <param name="minRecordLength" value="100"/>
    </DataStore>
</Repository>
-----------------repository.xml-----------end----------
users:okmAdmin

1、create a folder
2、upload one file to the folder
3、delete the file
4、go to garbage,and purge the file

--------------------------timer working-------output message-------------------------------
Code: Select all
2010-01-05 15:07:58,718 ERROR [STDERR]  INFO [Timer-4] (DataStoreGarbageCollector.java:23) - *** Begin datastore garbage collector ***
2010-01-05 15:07:58,734 ERROR [STDERR]  INFO [Timer-4] (DataStoreGarbageCollector.java:39) - Deleted garbage documents: 0
2010-01-05 15:07:58,750 ERROR [STDERR]  INFO [Timer-4] (DataStoreGarbageCollector.java:50) - *** End datastore garbage collector ***
-----------------------------------------------------------------------------------------
go to folder"C:\jboss-4.2.3.GA\repository\repository\datastore",
the uploaded file still exist! why?

Re: DataStoreGarbageCollector was working,but no file deleted

PostPosted:Tue Jan 05, 2010 9:49 am
by jllort
Yes is something mystic on jackrabbit.

We hope some day they decide to change it, because for us there's no sense. They says is for historical, but when file is deleted and there's no reference we don't understand why they continue mantaining it. That supose some extra space in your repository, we know. When we make upgrading between versions, really is when these files are definitivelly deleted. For us we'd like to delete before, but for it strange jackrabbit issue / enchancement / ? the files are not really totally deleted. We've started some discussion to them ... but with no results in this way, we don't understand why they have decided to maintaining the files after deleting.

Re: DataStoreGarbageCollector was working,but no file deleted

PostPosted:Tue Jan 05, 2010 11:23 am
by wangmj
thanks alot!

Re: DataStoreGarbageCollector was working,but no file deleted

PostPosted:Thu Jan 07, 2010 11:34 am
by pavila
Anyway this behaviour seems to be improved in recent Jackrabbit versions.