Closed Bug 1059716 Opened 10 years ago Closed 9 years ago

[Page move] Add-ons page in French are impossible to access

Categories

(developer.mozilla.org Graveyard :: Wiki pages, defect)

x86
macOS
defect
Not set
critical

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: teoli, Unassigned)

References

()

Details

The French Add-ons pages where scattered at the top level and under fr/docs/Mozilla/Add-ons. I did a double moved to cleans this one. 1. I moved https://developer.mozilla.org/fr/docs/Mozilla/Addons to fr/docs/temp_addons This usually put all the pages under the right hierarchy (temp_addons) 2. Then I move this back to fr/docs/Mozilla/Add-ons. I got a success move e-mail, but now all the pages under fr/docs/Mozilla/Add-ons are inaccessible. The top pages makes infinite redirect, and sub-pages 404. Is it possible to put this in the correct again. It is about 50 pages that are lost currently. It is not the first time I did such double moves to clean hierarchy, but it is the first time I get this problem.
Ugh, this is a mess. Let me see what I can do. Nothing the related traceback for the fix: Task kuma.wiki.tasks.move_page with id 55b2aa80-2c19-4674-9627-e5c641dc081b raised exception: 'IntegrityError(1062, "Duplicate entry \'temp_addons/Extraits_de_code/Signer_un_XPI-fr\' for key \'wiki_document_slug_68e6ba482859eef0_uniq\'")' Task was called with args: ('fr', u'Mozilla/Add-ons', u'temp_addons', u'jypenator@gmail.com') kwargs: {}. The contents of the full traceback was: Traceback (most recent call last): File "/data/www/developer.mozilla.org/kuma/vendor/packages/celery/celery/execute/trace.py", line 181, in trace_task R = retval = fun(*args, **kwargs) File "/usr/lib64/python2.6/site-packages/newrelic-2.18.1.15/newrelic/hooks/application_celery.py", line 97, in run return self.__call__(*args, **kwargs) File "/usr/lib64/python2.6/site-packages/newrelic-2.18.1.15/newrelic/hooks/application_celery.py", line 66, in wrapper return wrapped(*args, **kwargs) File "/usr/lib64/python2.6/site-packages/newrelic-2.18.1.15/newrelic/hooks/application_celery.py", line 61, in wrapper return wrapped(*args, **kwargs) File "/data/www/developer.mozilla.org/kuma/vendor/packages/celery/celery/app/task/__init__.py", line 262, in __call__ return self.run(*args, **kwargs) File "/data/www/developer.mozilla.org/kuma/kuma/wiki/tasks.py", line 154, in move_page moved_doc.schedule_rendering('max-age=0') File "/data/www/developer.mozilla.org/kuma/kuma/wiki/models.py", line 473, in schedule_rendering self.render(cache_control, base_url) File "/data/www/developer.mozilla.org/kuma/kuma/wiki/models.py", line 531, in render self.save() File "/data/www/developer.mozilla.org/kuma/kuma/wiki/models.py", line 869, in save super(Document, self).save(*args, **kwargs) File "/data/www/developer.mozilla.org/kuma/vendor/src/django/django/db/models/base.py", line 463, in save self.save_base(using=using, force_insert=force_insert, force_update=force_update) File "/data/www/developer.mozilla.org/kuma/vendor/src/django/django/db/models/base.py", line 529, in save_base rows = manager.using(using).filter(pk=pk_val)._update(values) File "/data/www/developer.mozilla.org/kuma/vendor/src/django/django/db/models/query.py", line 560, in _update return query.get_compiler(self.db).execute_sql(None) File "/data/www/developer.mozilla.org/kuma/vendor/src/django/django/db/models/sql/compiler.py", line 988, in execute_sql cursor = super(SQLUpdateCompiler, self).execute_sql(result_type) File "/data/www/developer.mozilla.org/kuma/vendor/src/django/django/db/models/sql/compiler.py", line 818, in execute_sql cursor.execute(sql, params) File "/data/www/developer.mozilla.org/kuma/vendor/src/django/django/db/backends/mysql/base.py", line 114, in execute return self.cursor.execute(query, args) File "/usr/lib64/python2.6/site-packages/newrelic-2.18.1.15/newrelic/hooks/database_dbapi2.py", line 21, in execute return self.__wrapped__.execute(sql, parameters) File "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py", line 173, in execute self.errorhandler(self, exc, value) File "/usr/lib64/python2.6/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler raise errorclass, errorvalue IntegrityError: (1062, "Duplicate entry 'temp_addons/Extraits_de_code/Signer_un_XPI-fr' for key 'wiki_document_slug_68e6ba482859eef0_uniq'")
So, here's how the redirects shook out: fr/docs/Mozilla/Add-ons -> fr/docs/temp_addons fr/docs/temp_addons -> /fr/docs/Mozilla/Add-ons/ (note the trailing /) In Django, we automatically remove trailing '/' characters [1][2]. :teoli - looks like you accidentally moved temp_addons to Add-ons/ with a trailing / ? Also, it looks like the 'Add-ons' doc was created before the temp_addons move? Did you create that page to hold the incoming pages? In any case, I can: 1. Remove the existing Mozilla/Add-ons page that redirects to temp_addons 2. Remove the trailing / from Mozilla/Add-ons/ page That should fix the pages. The redirects from 'temp_addons' pages won't work, but this will short-circuit those anyway. Note: 'fr/docs/Mozilla/Add*` pages received 288 (0.00004%) unique page-views last month, so this is a low-priority, low-risk section of content. ;) [1] https://github.com/mozilla/kuma/blob/master/settings.py#L413 [2] https://github.com/mozilla/kuma/blob/master/apps/sumo/middleware.py#L140-L159
Flags: needinfo?(jypenator)
(In reply to Luke Crouch [:groovecoder] from comment #2) > So, here's how the redirects shook out: > > fr/docs/Mozilla/Add-ons -> fr/docs/temp_addons > fr/docs/temp_addons -> /fr/docs/Mozilla/Add-ons/ (note the trailing /) > > In Django, we automatically remove trailing '/' characters [1][2]. > > :teoli - looks like you accidentally moved temp_addons to Add-ons/ with a > trailing / ? It is possible. It wasn't my intention. Should we prevent this (follow-up bug)? > > Also, it looks like the 'Add-ons' doc was created before the temp_addons > move? Did you create that page to hold the incoming pages? No. But I found this strange, so I checked my e-mail and I noticed that I didn't get an e-mail saying Add-ons -> temp_addons was completed (success or failure), only in the other direction. So it may means that I tried to moved back *before* the initial move was completed. Ubernostrum: could this be the cause of the endless redirect. > > In any case, I can: > > 1. Remove the existing Mozilla/Add-ons page that redirects to temp_addons > 2. Remove the trailing / from Mozilla/Add-ons/ page > > That should fix the pages. The redirects from 'temp_addons' pages won't > work, but this will short-circuit those anyway. I think it is a good plan. (I had a volunteer planning to work on this area, hence my decision to put the hierarchy at the same place first).
Flags: needinfo?(jypenator) → needinfo?(jbennett)
(In reply to Jean-Yves Perrier [:teoli] from comment #3) > No. But I found this strange, so I checked my e-mail and I noticed that I > didn't get an e-mail saying Add-ons -> temp_addons was completed (success or > failure), only in the other direction. So it may means that I tried to moved > back *before* the initial move was completed. Ubernostrum: could this be the > cause of the endless redirect. Yes, I think this is what happened. I got a couple of server error emails: 1. "Duplicate entry 'Mozilla/Add-ons/SDK-fr' for key 'wiki_document_slug_68e6ba482859eef0_uniq'" 2. "Duplicate entry 'Mozilla/Add-ons/SDK-fr' for key 'wiki_document_slug_68e6ba482859eef0_uniq'" 3. "Duplicate entry 'temp_addons/Extraits_de_code/Signer_un_XPI-fr' for key 'wiki_document_slug_68e6ba482859eef0_uniq'" The order of the emails indicate that it was trying to move pages into Mozilla/Add-ons before it had finished moving pages into temp_addons. > > In any case, I can: > > > > 1. Remove the existing Mozilla/Add-ons page that redirects to temp_addons > > 2. Remove the trailing / from Mozilla/Add-ons/ page > > > > That should fix the pages. The redirects from 'temp_addons' pages won't > > work, but this will short-circuit those anyway. > I think it is a good plan. (I had a volunteer planning to work on this area, > hence my decision to put the hierarchy at the same place first). I've put this into our Inbox.
Flags: needinfo?(jbennett)
Assignee: nobody → lcrouch
Severity: normal → major
Where are we after 3 weeks? The volunteer
Sorry: Where are we after 3 weeks? The volunteer is currently storing translations locally. That was ok for a few days, but we need to have these pages fixed asap. Bumping severity to critical, we need to have the 50 pages back in operation. Even if the page move problem is not fixed.
Severity: major → critical
Flags: needinfo?(mars)
I've added this to the team board, it's at the top of our fix list.
Flags: needinfo?(mars)
Note that there is a new locasprint mid-October in Paris. This must be fixed at least a week before it, so that Quentin can put his work live before it.
:ubernostrum - if you can kill the bad redirects, :teoli can move pages into their proper place in time for the l10n sprint in Paris. I also filed https://bugzilla.mozilla.org/show_bug.cgi?id=1079287 to help prevent this in the future.
Assignee: lcrouch → jbennett
Any news? Deadline is tomorrow. Reported in August. Prioritized several times.
Flags: needinfo?(lcrouch)
Depends on: 1083864
The locasprint passed without any action here or on https://bugzilla.mozilla.org/show_bug.cgi?id=1083864. :teoli - hopefully you were able to work something out for/with Quentin?
Flags: needinfo?(lcrouch)
Assignee: jbennett → nobody
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
Product: developer.mozilla.org → developer.mozilla.org Graveyard
You need to log in before you can comment on or make changes to this bug.