Description

We have a wiki page with a few thousand revisions. The page itself is ~2MB of text, with 50-60 lines added to it per day. The revisions directory for this page is 1GB+ in size. When this page is updated, the submit takes some time, and if the browser window is closed, it results in a partial update of the page rather than an aborted update.

Steps to reproduce

  1. create a test environment with a page that has 50 lines of text added in each iteration of 2,000+ revisions
  2. Go to the wiki editor and edit the wiki page to include 50 lines of text
  3. submit, and then close browser window before the returning "Thanks for updating the wiki" text is displayed
  4. Page should be partially updated, in a mixed state.

Example

Component selection

Details

MoinMoin Version

1.9.3

OS and Version

Freebsd 7

Python Version

python2.6

Server Setup

Server Details

Language you are using the wiki in (set in the browser/UserPreferences)

US/English

Workaround

Patience when updating this particular page and hope that the http request doesn't time out while the wiki is updating...

Discussion

Which deployment have you? wsgi?

I tried to reproduce this with a 2000 byte lorem ipsum text which got increased by 2000 iterations on command line. Then I added text lines into the text box. Saving takes this amount of time for me

    Page.execute = 0.000s
    getACL = 0.001s
    init = 0.029s
    load_multi_cfg = 0.000s
    run = 2.194s
    send_page = 2.164s
    send_page_content = 2.146s
    total = 2.223s

Can you show your measurements and give more details.

Please precisely define "partially updated, in a mixed state". The long POST time you are experiencing might be due to BadContents (antispam) related checking of a huge number of regexes against your huge text content. BTW, what are you doing on that wiki page, it seems to be a bit unusual? -- ThomasWaldmann 2012-06-23 19:54:17

Plan


CategoryMoinMoinBug

MoinMoin: MoinMoinBugs/PartialSaveOfPageWithManyRevisions (last edited 2012-06-23 19:54:18 by ThomasWaldmann)