Index: postgresql_adapter.rb
===================================================================
--- postgresql_adapter.rb	(revision 7009)
+++ postgresql_adapter.rb	(working copy)
@@ -195,14 +195,17 @@
       end
 
       def indexes(table_name, name = nil) #:nodoc:
-        result = query(<<-SQL, name)
-          SELECT i.relname, d.indisunique, a.attname
-            FROM pg_class t, pg_class i, pg_index d, pg_attribute a
+        schemas = schema_search_path.split(/,/).map { |p| quote(p) }.join(',')
+	result = query(<<-SQL, name)
+          SELECT distinct i.relname, d.indisunique, a.attname, s.schemaname
+            FROM pg_class t, pg_class i, pg_index d, pg_attribute a, pg_tables s
            WHERE i.relkind = 'i'
              AND d.indexrelid = i.oid
              AND d.indisprimary = 'f'
              AND t.oid = d.indrelid
              AND t.relname = '#{table_name}'
+	     AND t.relname = s.tablename
+	     AND s.schemaname in (#{schemas})
              AND a.attrelid = t.oid
              AND ( d.indkey[0]=a.attnum OR d.indkey[1]=a.attnum
                 OR d.indkey[2]=a.attnum OR d.indkey[3]=a.attnum
