[mb-commits] r13720 - in search_server/trunk/index/src: main/java/org/musicbrainz/search/index test/java/org/musicbrainz/search/index
[email protected] Thu, 03 Oct 2013 14:40:55 +0000
| Newsgroups | gmane.comp.audio.musicbrainz.cvs |
|---|---|
| Message-ID | <E1VRk5H-0003Ua-KC@wiley> |
Author: ijabz
Date: 2013-10-03 14:40:55 +0000 (Thu, 03 Oct 2013)
New Revision: 13720
Added:
search_server/trunk/index/src/main/java/org/musicbrainz/search/index/UrlIndex.java
search_server/trunk/index/src/main/java/org/musicbrainz/search/index/UrlIndexField.java
search_server/trunk/index/src/test/java/org/musicbrainz/search/index/UrlIndexTest.java
Modified:
search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexBuilder.java
search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexOptions.java
search_server/trunk/index/src/test/java/org/musicbrainz/search/index/AbstractIndexTest.java
Log:
SEARCH-149:Basic support for Artist Url Indexing
Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexBuilder.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexBuilder.java 2013-10-03 13:28:38 UTC (rev 13719)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexBuilder.java 2013-10-03 14:40:55 UTC (rev 13720)
@@ -123,6 +123,7 @@
new AreaIndex(mainDbConn),
new PlaceIndex(mainDbConn),
new AnnotationIndex(mainDbConn),
+ new UrlIndex(mainDbConn),
new TagIndex(mainDbConn),
new CDStubIndex(mainDbConn), //Note different db
};
Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexOptions.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexOptions.java 2013-10-03 13:28:38 UTC (rev 13719)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexOptions.java 2013-10-03 14:40:55 UTC (rev 13720)
@@ -69,8 +69,8 @@
public String getFreeDBDump() { return freeDBDump; }
// Selection of indexes to build
- @Option(name="--indexes", usage="A comma-separated list of indexes to build (area,artist,place,releasegroup,release,recording,label,work,tag,annotation,cdstub,freedb)")
- private String indexes = "area,artist,label,place,release,recording,releasegroup,work,tag,annotation,cdstub,freedb";
+ @Option(name="--indexes", usage="A comma-separated list of indexes to build (annotation,area,artist,place,releasegroup,release,recording,label,work,tag,url,cdstub,freedb)")
+ private String indexes = "annotation,area,artist,label,place,release,recording,releasegroup,work,tag,url,cdstub,freedb";
public ArrayList<String> selectedIndexes() { return new ArrayList<String>(Arrays.asList(indexes.split(","))); }
public boolean buildIndex(String indexName) { return selectedIndexes().contains(indexName); }
Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/index/AbstractIndexTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/index/AbstractIndexTest.java 2013-10-03 13:28:38 UTC (rev 13719)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/index/AbstractIndexTest.java 2013-10-03 14:40:55 UTC (rev 13720)
@@ -181,6 +181,16 @@
stmt.addBatch("DROP TABLE cdtoc_raw");
stmt.addBatch("DROP TABLE track_raw");
+ stmt.addBatch("DROP TABLE url");
+ stmt.addBatch("DROP TABLE l_area_url");
+ stmt.addBatch("DROP TABLE l_artist_url");
+ stmt.addBatch("DROP TABLE l_place_url");
+ stmt.addBatch("DROP TABLE l_recording_url");
+ stmt.addBatch("DROP TABLE l_release_url");
+ stmt.addBatch("DROP TABLE l_release_group_url");
+ stmt.addBatch("DROP TABLE l_url_url");
+ stmt.addBatch("DROP TABLE l_work_url");
+
stmt.addBatch("DROP TABLE work");
stmt.addBatch("DROP TABLE iswc");
stmt.addBatch("DROP TABLE work_alias");
@@ -238,6 +248,7 @@
setupCDStubTables(stmt);
setupWorkTables(stmt);
setupPlaceTables(stmt);
+ setupUrlTables(stmt);
setupReplicationTables(stmt);
insertReferenceData(stmt);
@@ -1032,6 +1043,70 @@
" last_updated TIMESTAMP" +
")");
+
+
+ stmt.addBatch("CREATE TABLE l_place_work" +
+ "(" +
+ " id SERIAL," +
+ " link INTEGER NOT NULL," +
+ " entity0 INTEGER NOT NULL," +
+ " entity1 INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL," +
+ " last_updated TIMESTAMP" +
+ ")");
+
+ stmt.addBatch("CREATE TABLE place_tag" +
+ "(" +
+ " place INTEGER NOT NULL," +
+ " tag INTEGER NOT NULL," +
+ " count INTEGER NOT NULL," +
+ " last_updated TIMESTAMP" +
+ ")");
+
+ }
+
+
+ protected void setupUrlTables(Statement stmt) throws Exception {
+
+ stmt.addBatch("CREATE TABLE url" +
+ "(" +
+ " id INTEGER," +
+ " gid UUID," +
+ " url TEXT," +
+ " last_updated TIMESTAMP" +
+ ")");
+
+
+ stmt.addBatch("CREATE TABLE l_area_url" +
+ "(" +
+ " id SERIAL," +
+ " link INTEGER NOT NULL," +
+ " entity0 INTEGER NOT NULL," +
+ " entity1 INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL DEFAULT 0," +
+ " last_updated TIMESTAMP" +
+ ");");
+
+ stmt.addBatch("CREATE TABLE l_artist_url" +
+ "(" +
+ " id SERIAL," +
+ " link INTEGER NOT NULL," +
+ " entity0 INTEGER NOT NULL," +
+ " entity1 INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL DEFAULT 0," +
+ " last_updated TIMESTAMP" +
+ ");");
+
+ stmt.addBatch("CREATE TABLE l_label_url" +
+ "(" +
+ " id SERIAL," +
+ " link INTEGER NOT NULL," +
+ " entity0 INTEGER NOT NULL," +
+ " entity1 INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL DEFAULT 0," +
+ " last_updated TIMESTAMP" +
+ ");");
+
stmt.addBatch("CREATE TABLE l_place_url" +
"(" +
" id SERIAL," +
@@ -1042,24 +1117,45 @@
" last_updated TIMESTAMP" +
")");
- stmt.addBatch("CREATE TABLE l_place_work" +
+ stmt.addBatch("CREATE TABLE l_release_url" +
"(" +
" id SERIAL," +
" link INTEGER NOT NULL," +
" entity0 INTEGER NOT NULL," +
" entity1 INTEGER NOT NULL," +
- " edits_pending INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL DEFAULT 0," +
" last_updated TIMESTAMP" +
- ")");
+ ");");
- stmt.addBatch("CREATE TABLE place_tag" +
+ stmt.addBatch("CREATE TABLE l_recording_url" +
"(" +
- " place INTEGER NOT NULL," +
- " tag INTEGER NOT NULL," +
- " count INTEGER NOT NULL," +
+ " id SERIAL," +
+ " link INTEGER NOT NULL," +
+ " entity0 INTEGER NOT NULL," +
+ " entity1 INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL DEFAULT 0," +
" last_updated TIMESTAMP" +
- ")");
+ ");");
+ stmt.addBatch("CREATE TABLE l_release_group_url" +
+ "(" +
+ " id SERIAL," +
+ " link INTEGER NOT NULL," +
+ " entity0 INTEGER NOT NULL," +
+ " entity1 INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL DEFAULT 0," +
+ " last_updated TIMESTAMP" +
+ ");");
+
+ stmt.addBatch("CREATE TABLE l_url_url" +
+ "(" +
+ " id SERIAL," +
+ " link INTEGER NOT NULL," +
+ " entity0 INTEGER NOT NULL," +
+ " entity1 INTEGER NOT NULL," +
+ " edits_pending INTEGER NOT NULL DEFAULT 0," +
+ " last_updated TIMESTAMP" +
+ ");");
}
@@ -1086,7 +1182,8 @@
")");
}
-
+
+
protected void insertReferenceData(Statement stmt) throws Exception {
stmt.addBatch("INSERT INTO gender (id, name) VALUES " +