Update of /var/cvs/contributions/lucene/src/org/mmbase/module/lucene In directory james.mmbase.org:/tmp/cvs-serv24689
Modified Files: Lucene.java Log Message: sometimes we get events on nodes not actually changed. Don't update indices then. What that happened may be another issue See also: http://cvs.mmbase.org/viewcvs/contributions/lucene/src/org/mmbase/module/lucene Index: Lucene.java =================================================================== RCS file: /var/cvs/contributions/lucene/src/org/mmbase/module/lucene/Lucene.java,v retrieving revision 1.128 retrieving revision 1.129 diff -u -b -r1.128 -r1.129 --- Lucene.java 12 Feb 2009 12:34:11 -0000 1.128 +++ Lucene.java 12 Feb 2009 13:51:13 -0000 1.129 @@ -48,7 +48,7 @@ * * @author Pierre van Rooden * @author Michiel Meeuwissen - * @version $Id: Lucene.java,v 1.128 2009/02/12 12:34:11 michiel Exp $ + * @version $Id: Lucene.java,v 1.129 2009/02/12 13:51:13 michiel Exp $ **/ public class Lucene extends ReloadableModule implements NodeEventListener, RelationEventListener, IdEventListener, AssignmentEvents.Listener { @@ -1104,7 +1104,12 @@ } break; case Event.TYPE_CHANGE: + if (event.getChangedFields().size() > 0) { + // I don't know why the event was issued in the first place, but don't make it + // worse. + scheduler.updateIndex("" + event.getNodeNumber(), MMBaseIndexDefinition.class); + } break; case Event.TYPE_DELETE: scheduler.deleteIndex("" + event.getNodeNumber(), MMBaseIndexDefinition.class); @@ -1225,6 +1230,8 @@ public abstract class Assignment implements Runnable, Delayed { + + private final Throwable cause = new Throwable(); // store a stack trace private final int id = assignmentIds++; private final long endTime = System.currentTimeMillis() + Lucene.this.waitTime; @@ -1252,6 +1259,10 @@ return new Date(endTime - Lucene.this.waitTime); } abstract String idString(); + + public Throwable getCause() { + return cause; + } } void assign(Assignment a) { if (assigned(a)) { @@ -1314,8 +1325,12 @@ current = indexer; int updated = indexer.updateIndex(number, klass); if (updated > 0) { + if (log.isDebugEnabled()) { + log.debug(indexer.getName() + ": Updated " + updated + " index entr" + (updated > 1 ? "ies" : "y"), getCause()); + } else if (log.isServiceEnabled()) { log.service(indexer.getName() + ": Updated " + updated + " index entr" + (updated > 1 ? "ies" : "y")); } + } current = null; } } _______________________________________________ Cvs mailing list Cvs@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/cvs