プロジェクト

全般

プロフィール

Vote #69530

完了

Simultaneous Wiki Updates Cause Internal Error

Admin Redmine さんが3年以上前に追加. 3年以上前に更新.

ステータス:
Closed
優先度:
高め
担当者:
-
カテゴリ:
Wiki_1
対象バージョン:
開始日:
2011/03/21
期日:
進捗率:

0%

予定工数:
category_id:
1
version_id:
34
issue_org_id:
7939
author_id:
30415
assigned_to_id:
0
comments:
5
status_id:
5
tracker_id:
1
plus1:
0
affected_version:
closed_on:
affected_version_id:
20
ステータス-->[Closed]

説明

Redmine version details:
Redmine version 1.1.1
Ruby version 1.8.7 (i386-mingw32)
RubyGems version 1.5.2
Rack version 1.0
Rails version 2.3.5
Active Record version 2.3.5
Active Resource version 2.3.5
Action Mailer version 2.3.5
Active Support version 2.3.5
Application root D:/Program Files (x86)/Redmine_Webserver/Redmine
Environment development
Database adapter mysql
Database schema version 0

Current Problem:
If two managers (or users with the "Edit wiki pages" permission) edit a wiki in the following way this results in a catastrophic error:
Manager 1 - Opens wiki in edit mode
Manager 2 - Opens wiki in edit mode
Manager 2 - Makes changes to wiki
Manager 2 - Saves wiki
Manager 1 - Makes changes to wiki
Manager 1 - Saves wiki

Manager 1 now gets a "500 internal error" page and loses all updates made to the wiki page. This can be rather frustrating if a large amount of changes have been made. The lock system (achieved with the "Protect wiki pages" permission) seems to be a step in the right direction, however this does not prevent another user with the same permission from editing the wiki and quite often we find they neglect to notice the "locked" icon in the top right-hand corner of the wiki before clicking "edit".

Possible Fixes:
1) Display a message box to all users that try to edit a wiki that is currently being edited.
OR
2) Make the "Lock" system work so that a user would have to "break the lock" in order to edit the wiki. (Thus alerting a user that they might not want to edit the wiki at this present moment, but at the same time allowing a lock to be broken if a user has forgotten to remove it after their edit has been saved).
OR
3) If the sequence of events above occurs display a more explanatory error page and retain the users edited text so that when they click "back" on their browser their changes are not lost. It is then up to the user to backup their changes and merge them into the recently updated wiki.


journals

--------------------------------------------------------------------------------
Solution 3 used to work but was broken in r4272.
Fix and test added in r5185.
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
I think the solution to the bug is not perfect. I update a wiki page with a lot of new content while others edit the page simultaneusly. However, when I save it, the page tells me I can't do this. What I can do is to leave the page and edit it again. I think this will cost editors much time especially when the new content scatterd in the page and there may be many editors update the same page at the same time.

I suggest to fix the problem with solution 2:
2) Make the "Lock" system work so that a user would have to "break the lock" in order to edit the wiki. (Thus alerting a user that they might not want to edit the wiki at this present moment, but at the same time allowing a lock to be broken if a user has forgotten to remove it after their edit has been saved).

Redmine version details:
Redmine version 2.2.3
Ruby version 1.9.3p194 (2012-04-20 revision 35410)[i686-linux]
RubyGems version 1.5.2
Rails version 3.2.12
Operating system: centos 5.5 (2.6.18-194.el5PAE)
Database: mysql-devel-5.0.95-5.el5_9
Database adapter mysql2
Ruby-aware server used: Mongrel

Current Problem:
If two managers (or users with the "Edit wiki pages" permission) edit a wiki in the following way this results in a catastrophic error:
Manager 1 - Opens wiki in edit mode
Manager 2 - Opens wiki in edit mode
Manager 2 - Makes changes to wiki
Manager 2 - Saves wiki
Manager 1 - Makes changes to wiki
Manager 1 - Saves wiki

Manager 1 now gets an explanatory error page and retain the users edited text. The lock system (achieved with the "Protect wiki pages" permission) seems to be a step in the right direction, however this does not prevent another user with the same permission from editing the wiki and quite often we find they neglect to notice the "locked" icon in the top right-hand corner of the wiki before clicking "edit".
--------------------------------------------------------------------------------
ada sun's suggestion looks reasonable. We use Redmine Wiki for preparing grant applications so the situation when multiple people try to edit the same page at the same time is not rare.
--------------------------------------------------------------------------------


related_issues

duplicates,Closed,8207,Wiki concurrent editing - loosing my edit

Admin Redmine さんが3年以上前に更新

  • カテゴリWiki_1 にセット
  • 対象バージョン1.1.3_34 にセット

他の形式にエクスポート: Atom PDF

いいね!0
いいね!0