beagle r4542 - in trunk/beagle: BeagleClient beagled



Author: dbera
Date: Thu Feb 28 00:02:46 2008
New Revision: 4542
URL: http://svn.gnome.org/viewvc/beagle?rev=4542&view=rev

Log:
Property changes (renames, nautilus emblems) were broken since 0.3. Secondary docs were added but not removed. Fix it. Fix a small mistake in Hit.cs.


Modified:
   trunk/beagle/BeagleClient/Hit.cs
   trunk/beagle/beagled/LuceneIndexingDriver.cs

Modified: trunk/beagle/BeagleClient/Hit.cs
==============================================================================
--- trunk/beagle/BeagleClient/Hit.cs	(original)
+++ trunk/beagle/BeagleClient/Hit.cs	Thu Feb 28 00:02:46 2008
@@ -342,7 +342,7 @@
 					return null;
 
 				if (top - first != 1) {
-					Logger.Log.Warn ("Accessed multi-property key '(0}' with Hit's indexer.");
+					Logger.Log.Warn ("Accessed multi-property key '{0}' with Hit's indexer.", key);
 					return null;
 				}
 

Modified: trunk/beagle/beagled/LuceneIndexingDriver.cs
==============================================================================
--- trunk/beagle/beagled/LuceneIndexingDriver.cs	(original)
+++ trunk/beagle/beagled/LuceneIndexingDriver.cs	Thu Feb 28 00:02:46 2008
@@ -213,19 +213,23 @@
 				
 				int num_delete = 0;
 
+				term = new Term ("Uri", uri_str);
 				// For property changes, only secondary index is modified
+				secondary_reader.Delete (term);
+
+				// Now remove from everywhere else (if asked to remove or if asked to add, in which case
+				// we first remove and then add)
+				// So we also need to remove child documents
 				if (indexable.Type != IndexableType.PropertyChange) {
-					term = new Term ("Uri", uri_str);
 					num_delete = primary_reader.Delete (term);
+
+					// When we delete an indexable, also delete any children.
+					// FIXME: Shouldn't we also delete any children of children, etc.?
+					term = new Term ("ParentUri", uri_str);
+					num_delete += primary_reader.Delete (term);
 					secondary_reader.Delete (term);
 				}
 
-				// When we delete an indexable, also delete any children.
-				// FIXME: Shouldn't we also delete any children of children, etc.?
-				term = new Term ("ParentUri", uri_str);
-				num_delete += primary_reader.Delete (term);
-				secondary_reader.Delete (term);
-
 				// If this is a strict removal (and not a deletion that
 				// we are doing in anticipation of adding something back),
 				// queue up a removed receipt.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]