]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
fts-lucene: Fixed checking if we need to track expunges or optimize.
authorTimo Sirainen <tss@iki.fi>
Thu, 4 Aug 2011 12:49:49 +0000 (15:49 +0300)
committerTimo Sirainen <tss@iki.fi>
Thu, 4 Aug 2011 12:49:49 +0000 (15:49 +0300)
src/plugins/fts-lucene/fts-backend-lucene.c
src/plugins/fts-lucene/lucene-wrapper.cc

index fcd35dfbb0ced0580e80df8f73230a3af25f912a..9c77e41b4b4139398c4e297275859516626730b3 100644 (file)
@@ -187,7 +187,8 @@ fts_backend_lucene_need_optimize(struct lucene_fts_backend_update_context *ctx)
        if (ctx->expunges == 0)
                return FALSE;
 
-       if (lucene_index_get_doc_count(backend->index, &numdocs) < 0)
+       if (lucene_index_get_doc_count(backend->index, &numdocs) < 0 ||
+           numdocs == 0)
                return FALSE;
 
        /* update pending expunges count */
index 2c3affefec8792aa2290ddea5a5a5cd9fc83b14f..0c12ba5fcc71d7752c86796cc77842c8e951ce1c 100644 (file)
@@ -224,7 +224,8 @@ int lucene_index_get_doc_count(struct lucene_index *index, uint32_t *count_r)
                        return 0;
                }
        }
-       return index->reader->numDocs();
+       *count_r = index->reader->numDocs();
+       return 0;
 }
 
 int lucene_index_build_init(struct lucene_index *index)