Bene has uploaded a new change for review.
https://gerrit.wikimedia.org/r/234958
Change subject: Add badges_per_sitelink table
......................................................................
Add badges_per_sitelink table
This allows us to store badges in a queryable way.
Bug: T72229
Change-Id: Ief2878edc7bd656bc66f7cc16dcefbb8c39fcec9
---
M repo/includes/store/sql/SqlStore.php
A repo/sql/AddBadgesPerSitelink.sql
2 files changed, 23 insertions(+), 6 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase
refs/changes/58/234958/1
diff --git a/repo/includes/store/sql/SqlStore.php
b/repo/includes/store/sql/SqlStore.php
index 3385c86..4998429 100644
--- a/repo/includes/store/sql/SqlStore.php
+++ b/repo/includes/store/sql/SqlStore.php
@@ -279,13 +279,11 @@
$this->updateTermsTable( $updater, $db );
$this->updateItemsPerSiteTable( $updater, $db );
$this->updateChangesTable( $updater, $db );
+ $this->updateBadgesPerSiteLinkTable( $updater, $db );
$this->registerPropertyInfoTableUpdates( $updater );
}
- /**
- * @param DatabaseUpdater $updater
- */
private function updateItemsPerSiteTable( DatabaseUpdater $updater,
DatabaseBase $db ) {
// Make wb_items_per_site.ips_site_page VARCHAR(310) - T99459
// NOTE: this update doesn't work on SQLite, but it's not
needed there anyway.
@@ -298,9 +296,6 @@
}
}
- /**
- * @param DatabaseUpdater $updater
- */
private function updateChangesTable( DatabaseUpdater $updater,
DatabaseBase $db ) {
// Make wb_changes.change_info MEDIUMBLOB - T108246
// NOTE: this update doesn't work on SQLite, but it's not
needed there anyway.
@@ -313,6 +308,17 @@
}
}
+ private function updateBadgesPerSiteLinkTable( DatabaseUpdater
$updater, DatabaseBase $db ) {
+ if ( !$db->tableExists( 'wb_badges_per_sitelink' ) ) {
+ $updater->addExtensionTable(
+ 'wb_badges_per_sitelink',
+ $this->getUpdateScriptPath(
'AddBadgesPerSiteLink', $db->getType() )
+ );
+
+ // TODO populate table
+ }
+ }
+
private function registerPropertyInfoTableUpdates( DatabaseUpdater
$updater ) {
$table = 'wb_property_info';
diff --git a/repo/sql/AddBadgesPerSitelink.sql
b/repo/sql/AddBadgesPerSitelink.sql
new file mode 100644
index 0000000..70ec16d
--- /dev/null
+++ b/repo/sql/AddBadgesPerSitelink.sql
@@ -0,0 +1,11 @@
+-- Licence: GNU GPL v2+
+
+-- Badges to site links
+CREATE TABLE IF NOT EXISTS /*_*/wb_badges_per_sitelink (
+ bps_badge_id VARBINARY(32) NOT NULL, -- Id of badge
item
+ bps_site_id VARBINARY(32) NOT NULL, -- Site of the
page that has the badge
+ bps_site_page VARCHAR(310) NOT NULL -- Name of the
page
+) /*$wgDBTableOptions*/;
+
+CREATE UNIQUE INDEX /*i*/wb_bps_badges ON /*_*/wb_badges_per_sitelink
(bps_badge_id, bps_site_id, bps_site_page);
+CREATE INDEX /*i*/wb_bps_pages_per_site ON /*_*/wb_badges_per_sitelink
(bps_site_id, bps_site_page);
--
To view, visit https://gerrit.wikimedia.org/r/234958
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ief2878edc7bd656bc66f7cc16dcefbb8c39fcec9
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Bene <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits