Imports the converse forum software I wrote a few years ago. I want to clean this up a bit and try using Hotwire with it. Note: The original repository was AGPL-3.0 licensed. I'm the copyright holder and have relicensed it to GPL-3.0 in the commit that is being merged. Imported from: https://github.com/tazjin/converse git-subtree-dir: web/converse git-subtree-mainline:386afdc794git-subtree-split:09168021e7Change-Id: Ia8b587db5174ef5b3c52910d3d027199150c58e0
		
			
				
	
	
		
			21 lines
		
	
	
	
		
			803 B
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
	
		
			803 B
		
	
	
	
		
			SQL
		
	
	
	
	
	
| -- Prepare a materialised view containing the tsvector data for all
 | |
| -- threads and posts. This view is indexed using a GIN-index to enable
 | |
| -- performant full-text searches.
 | |
| --
 | |
| -- For now the query language is hardcoded to be English.
 | |
| 
 | |
| CREATE MATERIALIZED VIEW search_index AS
 | |
|   SELECT p.id AS post_id,
 | |
|          p.author_name AS author,
 | |
|          t.id AS thread_id,
 | |
|          t.title AS title,
 | |
|          p.body AS body,
 | |
|          setweight(to_tsvector('english', t.title), 'B') ||
 | |
|          setweight(to_tsvector('english', p.body), 'A') ||
 | |
|          setweight(to_tsvector('simple', t.author_name), 'C') ||
 | |
|          setweight(to_tsvector('simple', p.author_name), 'C') AS document
 | |
|     FROM posts p
 | |
|     JOIN threads t
 | |
|     ON t.id = p.thread_id;
 | |
| 
 | |
| CREATE INDEX idx_fts_search ON search_index USING gin(document);
 |