Yes, that would be better. 0.4 used to add a dummy document in all cases (to track update_seq) so this didn't use to happen. with Lucene 2.9/3.0, I'm using commit(userData) instead of a dummy document. Unfortunately commit() does nothing if there are no documents added.
I'll have a fix for this today; I'll just add an empty document if there was no other change. B. On Fri, Apr 16, 2010 at 10:20 AM, Manokaran K <[email protected]> wrote: > On Fri, Apr 16, 2010 at 1:51 PM, Robert Newson <[email protected]>wrote: > >> That's more interesting. IIRC, Lucene's commit() method will only >> write to disk if there have been document changes. So, if your >> function doesn't update anything at all (your function returns null >> for all documents, say) then the update_seq won't be updated, and >> hence it will start over each time. >> > > I think you have got it! > > I tested the above by creating another doc (after all the others have been > generated by the ruby script) that will ensure that at least one _fti index > function will return a value. Now, its working as expected - the update_seq > got bumped to the latest and survives restarts!! > > But am curious: would it not be better if lucene bumped up the seq number > every time it indexed whether or not the index functions returned a value! > > thanks a ton for your efforts. > > regds, > mano >
