Module ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias alias Import alias Import alias Assign NameStore Call AttributeLoad NameLoad attr NameLoad ClassDef bases NameLoad body Assign NameStore Str FunctionDef arguments args NameParam NameParam defaults body Expr Call AttributeLoad Call NameLoad NameLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore Call AttributeLoad NameLoad attr Str Num Assign NameStore Num Assign NameStore ListLoad Str Str Str FunctionDef arguments args NameParam defaults body Assign NameStore BinOpMod Str TupleLoad Call AttributeLoad Str attr GeneratorExp BinOpMod Str TupleLoad NameLoad comprehension NameStore NameLoad Expr Call AttributeLoad NameLoad attr NameLoad TupleLoad NameLoad NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr If UnaryOpNot NameLoad body Return Num Assign NameStore SubscriptLoad SubscriptLoad NameLoad Index Num Index Num Assign NameStore ListComp SubscriptLoad NameLoad Index Num comprehension NameStore NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore ListLoad For NameStore NameLoad body TryExcept body Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr If CompareEq AttributeLoad NameLoad attr Str body Assign NameStore Str Assign NameStore SubscriptLoad NameLoad Index Str orelse If CompareEq AttributeLoad NameLoad attr Str body Assign NameStore Str Assign NameStore SubscriptLoad NameLoad Index Str orelse If CompareEq AttributeLoad NameLoad attr Str body Assign NameStore Str Assign NameStore SubscriptLoad NameLoad Index Str handlers ExceptHandler type TupleLoad NameLoad NameLoad body Continue If UnaryOpNot Call NameLoad NameLoad NameLoad body Continue Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad NameLoad If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Str orelse If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Str orelse Raise Call NameLoad Str For NameStore Call NameLoad Num Call NameLoad NameLoad NameLoad body Assign NameStore SubscriptLoad NameLoad Slice NameLoad BinOpAdd NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore Dict Str Str Str NameLoad NameLoad BinOpAdd NameLoad Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr NameLoad Return Call NameLoad NameLoad decorator_list Assign NameStore Yield Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr NameLoad If UnaryOpNot NameLoad body Expr Yield Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad decorator_list AttributeLoad NameLoad attr FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str Assign NameStore ListLoad Assign NameStore NameStore Call NameLoad AttributeLoad NameLoad attr NameLoad Assign NameStore ListLoad If CompareLt Call NameLoad NameLoad Num body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad Call AttributeLoad Str attr BinOpMult ListLoad Str Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore ListLoad For NameStore NameLoad body Expr Call AttributeLoad NameLoad attr Str Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad Call AttributeLoad Str attr NameLoad Assign NameStore NameLoad Assign NameStore NameLoad If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad NameLoad Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad orelse If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad orelse Raise Call NameLoad Str For NameStore NameLoad body AugAssignAdd NameStore BinOpAdd Str NameLoad For NameStore NameLoad body AugAssignAdd NameStore BinOpAdd Str NameLoad AugAssignAdd NameStore Str Assign NameStore Yield Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore Call NameLoad Lambda arguments args NameParam defaults CompareIn SubscriptLoad NameLoad Index Str NameLoad NameLoad Assign NameStore Yield Call AttributeLoad NameLoad attr ListComp SubscriptLoad NameLoad Index Str comprehension NameStore NameLoad Assign NameStore DictComp AttributeLoad NameLoad attr NameLoad comprehension NameStore NameLoad Assign NameStore NameLoad If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Yield Call AttributeLoad NameLoad attr NameLoad NameLoad AugAssignAdd NameStore Str Assign NameStore Yield Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore Call NameLoad GeneratorExp SubscriptLoad NameLoad Index Str comprehension NameStore NameLoad CompareIn SubscriptLoad NameLoad Index Str NameLoad Expr Call AttributeLoad NameLoad attr Dict Str Str Str ListComp Dict Str Str SubscriptLoad NameLoad Index SubscriptLoad NameLoad Index Str SubscriptLoad NameLoad Index Str comprehension NameStore NameLoad CompareIn SubscriptLoad NameLoad Index Str NameLoad NameLoad NameLoad decorator_list AttributeLoad NameLoad attr FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam defaults NameLoad body Expr Str Assign NameStore ListLoad Assign NameStore NameStore Call NameLoad AttributeLoad NameLoad attr NameLoad Assign NameStore ListLoad If CompareLt Call NameLoad NameLoad Num body Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad Call AttributeLoad Str attr BinOpMult ListLoad Str Call NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore ListLoad For NameStore NameLoad body Expr Call AttributeLoad NameLoad attr Str Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr BinOpMod Str TupleLoad Call AttributeLoad Str attr NameLoad Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad If NameLoad body TryExcept body Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr Str Assign NameStore Call NameLoad NameLoad Assign NameStore Call NameLoad NameLoad handlers ExceptHandler body Raise Call NameLoad Num Str Expr Call AttributeLoad NameLoad attr Str Expr Call AttributeLoad NameLoad attr ListLoad NameLoad NameLoad NameLoad If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad NameLoad Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad orelse If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad Assign NameStore Str Assign NameStore BinOpAdd ListLoad NameLoad NameLoad orelse Raise Call NameLoad Str AugAssignAdd NameStore Call AttributeLoad Str attr NameLoad AugAssignAdd NameStore Call AttributeLoad Str attr NameLoad AugAssignAdd NameStore Str Expr Call AttributeLoad NameLoad attr NameLoad Assign NameStore Yield Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore Call NameLoad Lambda arguments args NameParam defaults CompareIn SubscriptLoad NameLoad Index Str NameLoad NameLoad Assign NameStore Yield Call AttributeLoad NameLoad attr ListComp SubscriptLoad NameLoad Index Str comprehension NameStore NameLoad Assign NameStore DictComp AttributeLoad NameLoad attr NameLoad comprehension NameStore NameLoad Assign NameStore NameLoad If Call NameLoad AttributeLoad NameLoad attr NameLoad body Assign NameStore Yield Call AttributeLoad NameLoad attr NameLoad NameLoad AugAssignAdd NameStore Str Assign NameStore Yield Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore Call NameLoad GeneratorExp SubscriptLoad NameLoad Index Str comprehension NameStore NameLoad CompareIn SubscriptLoad NameLoad Index Str NameLoad Expr Call AttributeLoad NameLoad attr Dict Str Str Str ListComp Dict Str Str Str SubscriptLoad NameLoad Index SubscriptLoad NameLoad Index Str SubscriptLoad NameLoad Index Str BinOpMod Str TupleLoad SubscriptLoad NameLoad Index Str SubscriptLoad NameLoad Index Str comprehension NameStore NameLoad CompareIn SubscriptLoad NameLoad Index Str NameLoad NameLoad NameLoad decorator_list AttributeLoad NameLoad attr FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str FunctionDef arguments args NameParam defaults body Assign NameStore Call NameLoad For NameStore NameLoad body Assign NameStore ListLoad For NameStore TupleLoad Str Str Str body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad If NameLoad body Expr Call AttributeLoad NameLoad attr NameLoad If UnaryOpNot NameLoad body Continue Assign NameStore Call AttributeLoad Str attr NameLoad Assign NameStore Str Assign NameStore Str While CompareIn NameLoad NameLoad body AugAssignAdd NameStore Str While CompareIn NameLoad NameLoad body AugAssignAdd NameStore Str Assign NameStore BinOpMod Str Call NameLoad Dict Str Str Str NameLoad NameLoad Str Expr Call AttributeLoad NameLoad attr NameLoad TupleLoad NameLoad NameLoad Assign TupleStore NameStore SubscriptLoad Call AttributeLoad NameLoad attr Index Num Assign NameStore BinOpMod Str TupleLoad Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr ListComp Call AttributeLoad NameLoad attr comprehension NameStore NameLoad Return NameLoad decorator_list Return Call AttributeLoad NameLoad attr Str NameLoad decorator_list decorator_list FunctionDef arguments args NameParam defaults body Return BinOpMod Str TupleLoad Call AttributeLoad Str attr GeneratorExp BinOpMod Str TupleLoad NameLoad NameLoad comprehension TupleStore NameStore NameStore Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assign NameStore Call AttributeLoad NameLoad attr Str NameLoad AttributeLoad NameLoad attr If Call NameLoad NameLoad NameLoad body Return Call AttributeLoad Str attr GeneratorExp BinOpAdd NameLoad Str comprehension NameStore NameLoad orelse If Call NameLoad NameLoad NameLoad body Return Call AttributeLoad Str attr GeneratorExp BinOpAdd NameLoad Str comprehension NameStore NameLoad orelse Raise Call NameLoad Str decorator_list
N/A twisted.internet defer background_updates BackgroundUpdateStore synapse.api.errors SynapseError synapse.storage.engines PostgresEngine Sqlite3Engine N/A logging N/A re N/A logger N/A N/A logging getLogger __name__ SearchStore N/A BackgroundUpdateStore N/A N/A EVENT_SEARCH_UPDATE_NAME event_search __init__ N/A N/A self hs N/A N/A N/A N/A N/A N/A super SearchStore self __init__ hs N/A N/A N/A self register_background_update_handler N/A self EVENT_SEARCH_UPDATE_NAME N/A self _background_reindex_search N/A _background_reindex_search N/A N/A self progress batch_size N/A N/A N/A target_min_stream_id N/A progress N/A target_min_stream_id_inclusive N/A max_stream_id N/A progress N/A max_stream_id_exclusive N/A rows_inserted N/A N/A progress get rows_inserted 0 N/A INSERT_CLUMP_SIZE 1000 N/A TYPES N/A m.room.name m.room.message m.room.topic reindex_search_txn N/A N/A txn N/A N/A N/A sql N/A SELECT stream_ordering, event_id FROM events WHERE ? <= stream_ordering AND stream_ordering < ? AND (%s) ORDER BY stream_ordering DESC LIMIT ? N/A N/A N/A  OR  join N/A N/A type = '%s' N/A t N/A t TYPES N/A N/A N/A txn execute sql N/A target_min_stream_id max_stream_id batch_size N/A rows N/A N/A txn fetchall N/A N/A rows N/A N/A 0 N/A min_stream_id N/A N/A rows N/A -1 N/A 0 N/A event_ids N/A N/A row N/A 1 N/A row rows N/A events N/A N/A self _get_events_txn txn event_ids N/A event_search_rows N/A N/A event events N/A N/A N/A N/A event_id N/A event event_id N/A room_id N/A event room_id N/A content N/A event content N/A N/A N/A event type m.room.message N/A N/A key content.body N/A value N/A content N/A body N/A N/A N/A N/A event type m.room.topic N/A N/A key content.topic N/A value N/A content N/A topic N/A N/A N/A N/A event type m.room.name N/A N/A key content.name N/A value N/A content N/A name N/A N/A N/A N/A KeyError AttributeError N/A N/A N/A N/A N/A isinstance value basestring N/A N/A N/A N/A N/A event_search_rows append N/A event_id room_id key value N/A N/A isinstance N/A self database_engine PostgresEngine N/A N/A sql INSERT INTO event_search (event_id, room_id, key, vector) VALUES (?,?,?,to_tsvector('english', ?)) N/A N/A N/A isinstance N/A self database_engine Sqlite3Engine N/A N/A sql INSERT INTO event_search (event_id, room_id, key, value) VALUES (?,?,?,?) N/A N/A N/A Exception Unrecognized database engine N/A index N/A range 0 N/A len event_search_rows INSERT_CLUMP_SIZE N/A N/A clump N/A event_search_rows N/A index N/A index INSERT_CLUMP_SIZE N/A N/A N/A txn executemany sql clump N/A progress N/A target_min_stream_id_inclusive max_stream_id_exclusive rows_inserted target_min_stream_id min_stream_id N/A rows_inserted N/A len event_search_rows N/A N/A N/A self _background_update_progress_txn txn N/A self EVENT_SEARCH_UPDATE_NAME progress N/A N/A len event_search_rows N/A N/A result N/A N/A N/A self runInteraction N/A self EVENT_SEARCH_UPDATE_NAME reindex_search_txn N/A N/A result N/A N/A N/A N/A N/A self _end_background_update N/A self EVENT_SEARCH_UPDATE_NAME N/A N/A N/A defer returnValue result N/A N/A defer inlineCallbacks search_msgs N/A N/A self room_ids search_term keys N/A N/A N/A Performs a full text search over events with given keys.

        Args:
            room_ids (list): List of room ids to search in
            search_term (str): Search term to search for
            keys (list): List of keys to search in, currently supports
                "content.body", "content.name", "content.topic"

        Returns:
            list of dicts
         N/A clauses N/A N/A search_query search_query N/A _parse_query N/A self database_engine search_term N/A args N/A N/A N/A N/A len room_ids 500 N/A N/A N/A N/A clauses append N/A room_id IN (%s) N/A N/A N/A , join N/A N/A ? N/A len room_ids N/A N/A N/A args extend room_ids N/A local_clauses N/A N/A key keys N/A N/A N/A N/A local_clauses append key = ? N/A N/A N/A args append key N/A N/A N/A clauses append N/A (%s) N/A N/A N/A  OR  join local_clauses N/A count_args args N/A count_clauses clauses N/A N/A isinstance N/A self database_engine PostgresEngine N/A N/A sql SELECT ts_rank_cd(vector, to_tsquery('english', ?)) AS rank, room_id, event_id FROM event_search WHERE vector @@ to_tsquery('english', ?) N/A args N/A N/A search_query search_query args N/A count_sql SELECT room_id, count(*) as count FROM event_search WHERE vector @@ to_tsquery('english', ?) N/A count_args N/A N/A search_query count_args N/A N/A N/A isinstance N/A self database_engine Sqlite3Engine N/A N/A sql SELECT rank(matchinfo(event_search)) as rank, room_id, event_id FROM event_search WHERE value MATCH ? N/A args N/A N/A search_query args N/A count_sql SELECT room_id, count(*) as count FROM event_search WHERE value MATCH ? N/A count_args N/A N/A search_term count_args N/A N/A N/A Exception Unrecognized database engine N/A clause clauses N/A N/A sql N/A  AND  clause N/A clause count_clauses N/A N/A count_sql N/A  AND  clause N/A sql  ORDER BY rank DESC LIMIT 500 N/A results N/A N/A N/A self _execute search_msgs N/A self cursor_to_dict sql args N/A results N/A filter N/A N/A N/A row N/A N/A N/A row N/A room_id room_ids results N/A events N/A N/A N/A self _get_events N/A N/A r N/A event_id N/A r results N/A event_map N/A N/A ev event_id ev N/A ev events N/A highlights None N/A N/A isinstance N/A self database_engine PostgresEngine N/A N/A highlights N/A N/A N/A self _find_highlights_in_postgres search_query events N/A count_sql  GROUP BY room_id N/A count_results N/A N/A N/A self _execute search_rooms_count N/A self cursor_to_dict count_sql count_args N/A count N/A sum N/A N/A row N/A count N/A row count_results N/A N/A row N/A room_id room_ids N/A N/A N/A defer returnValue N/A results highlights count N/A N/A event rank N/A event_map N/A N/A r N/A event_id N/A r N/A rank N/A r results N/A N/A r N/A event_id event_map highlights count N/A N/A defer inlineCallbacks search_rooms N/A N/A self room_ids search_term keys limit pagination_token N/A None N/A N/A Performs a full text search over events with given keys.

        Args:
            room_id (list): The room_ids to search in
            search_term (str): Search term to search for
            keys (list): List of keys to search in, currently supports
                "content.body", "content.name", "content.topic"
            pagination_token (str): A pagination token previously returned

        Returns:
            list of dicts
         N/A clauses N/A N/A search_query search_query N/A _parse_query N/A self database_engine search_term N/A args N/A N/A N/A N/A len room_ids 500 N/A N/A N/A N/A clauses append N/A room_id IN (%s) N/A N/A N/A , join N/A N/A ? N/A len room_ids N/A N/A N/A args extend room_ids N/A local_clauses N/A N/A key keys N/A N/A N/A N/A local_clauses append key = ? N/A N/A N/A args append key N/A N/A N/A clauses append N/A (%s) N/A N/A N/A  OR  join local_clauses N/A count_args N/A list args N/A count_clauses N/A list clauses N/A pagination_token N/A N/A N/A N/A N/A origin_server_ts stream N/A N/A pagination_token split , N/A origin_server_ts N/A int origin_server_ts N/A stream N/A int stream N/A N/A N/A N/A N/A SynapseError 400 Invalid pagination token N/A N/A N/A clauses append (origin_server_ts < ? OR (origin_server_ts = ? AND stream_ordering < ?)) N/A N/A N/A args extend N/A origin_server_ts origin_server_ts stream N/A N/A isinstance N/A self database_engine PostgresEngine N/A N/A sql SELECT ts_rank_cd(vector, to_tsquery('english', ?)) as rank, origin_server_ts, stream_ordering, room_id, event_id FROM event_search NATURAL JOIN events WHERE vector @@ to_tsquery('english', ?) AND  N/A args N/A N/A search_query search_query args N/A count_sql SELECT room_id, count(*) as count FROM event_search WHERE vector @@ to_tsquery('english', ?) AND  N/A count_args N/A N/A search_query count_args N/A N/A N/A isinstance N/A self database_engine Sqlite3Engine N/A N/A sql SELECT rank(matchinfo) as rank, room_id, event_id, origin_server_ts, stream_ordering FROM (SELECT key, event_id, matchinfo(event_search) as matchinfo FROM event_search WHERE value MATCH ? ) CROSS JOIN events USING (event_id) WHERE  N/A args N/A N/A search_query args N/A count_sql SELECT room_id, count(*) as count FROM event_search WHERE value MATCH ? AND  N/A count_args N/A N/A search_term count_args N/A N/A N/A Exception Unrecognized database engine N/A sql N/A N/A  AND  join clauses N/A count_sql N/A N/A  AND  join count_clauses N/A sql  ORDER BY origin_server_ts DESC, stream_ordering DESC LIMIT ? N/A N/A N/A args append limit N/A results N/A N/A N/A self _execute search_rooms N/A self cursor_to_dict sql args N/A results N/A filter N/A N/A N/A row N/A N/A N/A row N/A room_id room_ids results N/A events N/A N/A N/A self _get_events N/A N/A r N/A event_id N/A r results N/A event_map N/A N/A ev event_id ev N/A ev events N/A highlights None N/A N/A isinstance N/A self database_engine PostgresEngine N/A N/A highlights N/A N/A N/A self _find_highlights_in_postgres search_query events N/A count_sql  GROUP BY room_id N/A count_results N/A N/A N/A self _execute search_rooms_count N/A self cursor_to_dict count_sql count_args N/A count N/A sum N/A N/A row N/A count N/A row count_results N/A N/A row N/A room_id room_ids N/A N/A N/A defer returnValue N/A results highlights count N/A N/A event rank pagination_token N/A event_map N/A N/A r N/A event_id N/A r N/A rank N/A %s,%s N/A N/A r N/A origin_server_ts N/A r N/A stream_ordering N/A r results N/A N/A r N/A event_id event_map highlights count N/A N/A defer inlineCallbacks _find_highlights_in_postgres N/A N/A self search_query events N/A N/A N/A Given a list of events and a search term, return a list of words
        that match from the content of the event.

        This is used to give a list of words that clients can match against to
        highlight the matching parts.

        Args:
            search_query (str)
            events (list): A list of events

        Returns:
            deferred : A set of strings.
         f N/A N/A txn N/A N/A N/A highlight_words N/A set N/A event events N/A N/A values N/A N/A key N/A body name topic N/A N/A v N/A N/A N/A event content get key None N/A v N/A N/A N/A N/A values append v N/A N/A values N/A N/A N/A value N/A N/A join values N/A start_sel < N/A stop_sel > N/A N/A start_sel value N/A N/A start_sel < N/A N/A stop_sel value N/A N/A stop_sel > N/A query N/A SELECT ts_headline(?, to_tsquery('english', ?), %s) N/A _to_postgres_options N/A StartSel StopSel MaxFragments start_sel stop_sel 50 N/A N/A N/A txn execute query N/A value search_query N/A N/A headline N/A N/A N/A txn fetchall N/A 0 N/A matcher_regex N/A %s(.*?)%s N/A N/A N/A re escape start_sel N/A N/A re escape stop_sel N/A res N/A N/A re findall matcher_regex headline N/A N/A N/A highlight_words update N/A N/A N/A r lower N/A r res N/A highlight_words N/A N/A N/A N/A self runInteraction _find_highlights f N/A N/A _to_postgres_options N/A N/A options_dict N/A N/A N/A N/A '%s' N/A N/A N/A , join N/A N/A %s=%s N/A k v N/A N/A k v N/A N/A options_dict items N/A _parse_query N/A N/A database_engine search_term N/A N/A N/A Takes a plain unicode string from the user and converts it into a form
    that can be passed to database.
    We use this so that we can add prefix matching, which isn't something
    that is supported by default.
     N/A results N/A N/A re findall ([\w\-]+) search_term N/A re UNICODE N/A N/A isinstance database_engine PostgresEngine N/A N/A N/A N/A  &  join N/A N/A result :* N/A result results N/A N/A N/A isinstance database_engine Sqlite3Engine N/A N/A N/A N/A  &  join N/A N/A result * N/A result results N/A N/A N/A Exception Unrecognized database engine N/A