<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/strokedb/views/all_slots_view.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -14,15 +14,21 @@ module StrokeDB
       initialize_files
       autosync! unless @options['noautosync']
       raise &quot;Missing chunk storage&quot; unless @storage
+      @all_slots_view = GenerateAllSlotsView()
     end
 
     def find(uuid, version=nil, opts = {}, &amp;block)
       @storage.find(uuid,version,opts.merge(:store =&gt; self),&amp;block)
     end
 
-    def search(*args)
-      return [] unless @index_store
-      @index_store.find(*args)
+    # Perform a simple search
+    # search(:a =&gt; xxx, :b =&gt; yyy, ...)
+    def search(slots)
+      slots.map do |key, value|
+        @all_slots_view.find([key, value]).to_set 
+      end.inject do |set, subset|
+        set &amp; subset
+      end
     end
 
     def include?(uuid,version=nil)</diff>
      <filename>lib/strokedb/store.rb</filename>
    </modified>
    <modified>
      <diff>@@ -5,4 +5,4 @@ require 'views/view_storage'
 require 'views/memory_view_storage'
 require 'views/file_view_storage'
 require 'views/view'
-require 'views/docs_by_meta'
+require 'views/all_slots_view'</diff>
      <filename>lib/strokedb/views.rb</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>lib/strokedb/views/docs_by_meta.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>0d0bb33923b34d800a7f45e86a32812173df14da</id>
    </parent>
  </parents>
  <author>
    <name>Oleg Andreev</name>
    <email>oleganza@idbns.com</email>
  </author>
  <url>http://github.com/yrashk/strokedb/commit/3a6a7e15520ee7b77fdb134f11802a4cd152edb0</url>
  <id>3a6a7e15520ee7b77fdb134f11802a4cd152edb0</id>
  <committed-date>2008-05-23T18:21:51-07:00</committed-date>
  <authored-date>2008-05-23T18:21:51-07:00</authored-date>
  <message>added drop-in replacement for InvertedList index (all_slots_view &amp; Store#search)</message>
  <tree>0d3c2490b3f87eecaa2e83aaa1c80489bdd4a6ed</tree>
  <committer>
    <name>Oleg Andreev</name>
    <email>oleganza@idbns.com</email>
  </committer>
</commit>
