The new wiki will be a public one.
Description
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Resolved | Reedy | T199577 Create Wikiversity Chinese | |||
Resolved | Bstorm | T199599 Prepare and check storage layer for zhwikiversity |
Event Timeline
Mentioned in SAL (#wikimedia-operations) [2018-08-02T12:19:08Z] <Reedy> Wikis created T196748 T198401 T199599
Mentioned in SAL (#wikimedia-operations) [2018-08-02T12:58:48Z] <marostegui> Sanitize zhwikiversity satwiki T199599 T198401
I have sanitized this wiki and my new user was created correctly with all the sanitization done.
It is ready for cloud-services-team to create the views.
I have run sudo /usr/local/sbin/maintain-replica-indexes --debug --database zhwikiversity on all 3 wiki replica hosts.
@Bstorm I can't finish this one due to pymysql.err.OperationalError: (1044, "Access denied for user 'maintainviews'@'localhost' to database 'satwiki\\_p'") on all 3 hosts. Your root powers are required.
I assume you meant zhwikiversity, I have granted that on all hosts. Try re-running the script.
for i in labsdb1009 labsdb1010 labsdb1011; do echo $i; mysql.py -h$i -e " show grants for 'labsdbuser';" | grep -i zhwikiversity;done labsdb1009 GRANT SELECT, SHOW VIEW ON `zhwikiversity\\_p`.* TO 'labsdbuser' labsdb1010 GRANT SELECT, SHOW VIEW ON `zhwikiversity\\_p`.* TO 'labsdbuser' labsdb1011 GRANT SELECT, SHOW VIEW ON `zhwikiversity\\_p`.* TO 'labsdbuser'
I think the failure I'm seeing is the same upstream wildcard grant bug that we have seen before. The maintain-views script connects to the databsase server as the maintainviews user. That user is being denied the ability to operate on the zhwikiversity_p database.
2018-08-03 18:48:11,762 DEBUG SQL: GRANT SELECT, SHOW VIEW ON `zhwikiversity\_p`.* TO 'labsdbuser'; Traceback (most recent call last): File "/usr/local/sbin/maintain-views", line 594, in <module> main() File "/usr/local/sbin/maintain-views", line 575, in main ops.execute(fullviews, customviews) File "/usr/local/sbin/maintain-views", line 362, in execute self.db_p.replace('_', '\\_')) File "/usr/local/sbin/maintain-views", line 54, in write_execute self.cursor.execute(query) File "/usr/lib/python3/dist-packages/pymysql/cursors.py", line 166, in execute result = self._query(query) File "/usr/lib/python3/dist-packages/pymysql/cursors.py", line 322, in _query conn.query(q) File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 852, in query self._affected_rows = self._read_query_result(unbuffered=unbuffered) File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 1053, in _read_query_result result.read() File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 1336, in read first_packet = self.connection._read_packet() File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 1010, in _read_packet packet.check_error() File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 393, in check_error err.raise_mysql_exception(self._data) File "/usr/lib/python3/dist-packages/pymysql/err.py", line 107, in raise_mysql_exception raise errorclass(errno, errval) pymysql.err.OperationalError: (1044, "Access denied for user 'maintainviews'@'localhost' to database 'zhwikiversity\\_p'")
The bug is weird. The grant is already there if @Marostegui ran it, so the script doesn't need to do it. It only tries to do it if the database with the _p doesn't exist. It also often will randomly fail to create the DB. I think right now, it tries the grant first. If we create the DB, it'll run. It won't attempt to do the grant itself if the DB exists.
2018-08-03T19:51:57Z mwopenstackclients.DnsManager WARNING : Creating id_internalwikimedia.analytics.db.svc.eqiad.wmflabs.
2018-08-03T19:53:37Z mwopenstackclients.DnsManager WARNING : Creating satwiki.analytics.db.svc.eqiad.wmflabs.
2018-08-03T19:54:44Z mwopenstackclients.DnsManager WARNING : Creating wikimaniawiki.analytics.db.svc.eqiad.wmflabs.
2018-08-03T19:54:55Z mwopenstackclients.DnsManager WARNING : Creating zhwikiversity.analytics.db.svc.eqiad.wmflabs.
2018-08-03T19:56:55Z mwopenstackclients.DnsManager WARNING : Creating id_internalwikimedia.web.db.svc.eqiad.wmflabs.
2018-08-03T19:58:36Z mwopenstackclients.DnsManager WARNING : Creating satwiki.web.db.svc.eqiad.wmflabs.
2018-08-03T19:59:38Z mwopenstackclients.DnsManager WARNING : Creating wikimaniawiki.web.db.svc.eqiad.wmflabs.
2018-08-03T19:59:48Z mwopenstackclients.DnsManager WARNING : Creating zhwikiversity.web.db.svc.eqiad.wmflabs.
The dns step set up all the new wiki db names.