Skip to content

Commit 1c951fb

Browse files
committed
Use multi column index
1 parent 27a0143 commit 1c951fb

File tree

1 file changed

+7
-22
lines changed

1 file changed

+7
-22
lines changed

src/main/java/org/jabref/logic/search/indexing/BibFieldsIndexer.java

Lines changed: 7 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -136,34 +136,19 @@ PRIMARY KEY (%s, %s)
136136

137137
// trigram index on field value column
138138
connection.createStatement().executeUpdate("""
139-
CREATE INDEX "%s_%s_index" ON %s USING gin ("%s" gin_trgm_ops)
139+
CREATE INDEX "%s_%s_index" ON %s USING gin ("%s" gin_trgm_ops, "%s" gin_trgm_ops)
140140
""".formatted(
141141
mainTable, FIELD_VALUE_LITERAL,
142142
schemaMainTableReference,
143-
FIELD_VALUE_LITERAL));
143+
FIELD_VALUE_LITERAL, FIELD_VALUE_TRANSFORMED));
144144

145-
// trigram index on field value transformed column
145+
// region btree index on spilt table
146146
connection.createStatement().executeUpdate("""
147-
CREATE INDEX "%s_%s_index" ON %s USING gin ("%s" gin_trgm_ops)
147+
CREATE INDEX "%s_%s_index" ON %s ("%s", "%s")
148148
""".formatted(
149-
mainTable, FIELD_VALUE_TRANSFORMED,
150-
schemaMainTableReference,
151-
FIELD_VALUE_TRANSFORMED));
152-
153-
// region btree index on spilt values column
154-
// connection.createStatement().executeUpdate("""
155-
// CREATE INDEX "%s" ON "%s" ("%s")
156-
// """.formatted(
157-
// FIELD_VALUE_LITERAL.getIndexName(tableNameSplitValues),
158-
// tableName,
159-
// FIELD_VALUE_LITERAL));
160-
//
161-
// connection.createStatement().executeUpdate("""
162-
// CREATE INDEX "%s" ON "%s" ("%s")
163-
// """.formatted(
164-
// FIELD_VALUE_TRANSFORMED.getIndexName(tableNameSplitValues),
165-
// tableName,
166-
// FIELD_VALUE_TRANSFORMED));
149+
splitValuesTable, FIELD_VALUE_LITERAL,
150+
schemaSplitValuesTableReference,
151+
FIELD_VALUE_LITERAL, FIELD_VALUE_TRANSFORMED));
167152
// endregion
168153

169154
LOGGER.debug("Created indexes for library: {}", libraryName);

0 commit comments

Comments
 (0)