Add SQLite support
This commit is contained in:
parent
f9340ea0d5
commit
cfd39d6b55
|
@ -17,6 +17,7 @@ from twisted.internet import defer
|
||||||
|
|
||||||
from _base import SQLBaseStore
|
from _base import SQLBaseStore
|
||||||
from synapse.api.constants import KnownRoomEventKeys, SearchConstraintTypes
|
from synapse.api.constants import KnownRoomEventKeys, SearchConstraintTypes
|
||||||
|
from synapse.storage.engines import PostgresEngine
|
||||||
|
|
||||||
|
|
||||||
class SearchStore(SQLBaseStore):
|
class SearchStore(SQLBaseStore):
|
||||||
|
@ -48,11 +49,17 @@ class SearchStore(SQLBaseStore):
|
||||||
"(%s)" % (" OR ".join(local_clauses),)
|
"(%s)" % (" OR ".join(local_clauses),)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if isinstance(self.database_engine, PostgresEngine):
|
||||||
sql = (
|
sql = (
|
||||||
"SELECT ts_rank_cd(vector, query) AS rank, event_id"
|
"SELECT ts_rank_cd(vector, query) AS rank, event_id"
|
||||||
" FROM plainto_tsquery('english', ?) as query, event_search"
|
" FROM plainto_tsquery('english', ?) as query, event_search"
|
||||||
" WHERE vector @@ query"
|
" WHERE vector @@ query"
|
||||||
)
|
)
|
||||||
|
else:
|
||||||
|
sql = (
|
||||||
|
"SELECT 0 as rank, event_id FROM event_search"
|
||||||
|
" WHERE value MATCH ?"
|
||||||
|
)
|
||||||
|
|
||||||
for clause in clauses:
|
for clause in clauses:
|
||||||
sql += " AND " + clause
|
sql += " AND " + clause
|
||||||
|
|
Loading…
Reference in New Issue