Edgewall Software
Modify

Ticket #3779 (closed defect: fixed)

Opened 5 years ago

Last modified 5 years ago

Reports takes minutes to complete

Reported by: omry at yadan dot net Owned by: cboos
Priority: high Milestone: 0.10.1
Component: wiki system Version: 0.10b1
Severity: critical Keywords: slow
Cc: trac@…
Release Notes:
API Changes:

Description (last modified by cboos) (diff)

My database contains about 35 tickets.
recently reports started to work very slowly.
when I open a report, apache cpu usage spikes to 100% for a few minutes (!) and then I get the results.
I inserted the sql query directly into sqlite3, and it returned instantly


Note: this is a problem with the wiki engine, when rendering attachment:ticket35.txt
-- cboos

Attachments

trac.db.sqlite3.zip (201.0 KB) - added by omry 5 years ago.
my database file. (sqlite 3)
ticket35.txt (756 bytes) - added by anonymous 5 years ago.

Download all attachments as: .zip

Change History

comment:1 Changed 5 years ago by omry

if you need my database or anything else to reproduce, just ask.

comment:2 Changed 5 years ago by cboos

Can you first try if this is reproductible for you using tracd?

comment:3 Changed 5 years ago by mgood

  • Keywords needinfo added

comment:4 Changed 5 years ago by omry

it is.

comment:5 Changed 5 years ago by omry

I mean, it is reproduceable with tracd.

Changed 5 years ago by omry

my database file. (sqlite 3)

comment:6 Changed 5 years ago by omry

  • Keywords needinfo removed
  • Milestone set to 0.10.1

assigned to milestone 0.10.1

comment:7 Changed 5 years ago by eblot

  • Milestone 0.10.1 deleted

Do not assign a milestone without providing a reason or a patch.

Please describe your environment (version of the OS, Python, Svn, Pysqlite, etc.)

comment:8 Changed 5 years ago by omry

Debian etch.
Kernel 2.6.15.
Python 2.4
SVN 1.3.2
pysqlite:
1.1.7-2 AND 2.3.2-1 (could this be the problem?)

comment:9 Changed 5 years ago by anonymous

and sqlite 3.3.7

comment:10 Changed 5 years ago by trac@…

registered email.

comment:11 Changed 5 years ago by trac@…

figured it out:
ticket 35 in the attached database had a long message insife ![brackets].
when I deleted it from the database all went back to normal.

comment:12 Changed 5 years ago by cboos

  • Owner changed from daniel to cboos

hm, that's not a good reason to take minutes...
Can you please copy/paste that message in a block, here? (or attach it?)

comment:13 Changed 5 years ago by trac@…

  • Cc trac@… added

I removed it from my database, but its in the attached file.
ticket 35.

comment:14 Changed 5 years ago by franck34

After upgrade sqlite2 -> sqlite3, got same problem. Very slow and httpd > 99% CPU
(eaccelerator website ...)

comment:15 Changed 5 years ago by franck34

sorry, i forgot some things:
Fedora Core 3,
Python 2.4
Trac 0.9.3

Before update sqlite, everything was ok.

comment:16 Changed 5 years ago by anonymous

franck34, as an emergency care, find the bad ticket and remove it from the database.
you can do it by viewing all the tickets on at a time till you find the slow one.
there was no obvious way to remove the ticket, but I found something after some searching.

comment:17 Changed 5 years ago by franck34

  • Keywords slow added

Very good !

I found a ticket with a description > 300 000 chars.

I've change the description of this ticket and i put 99% of the description in an attachement instead of directly in the description.

Now everything is ok, problem solved for me.

comment:18 Changed 5 years ago by franck34

As suggested by matt_good on irc, request feature as been written in ticket #3944

comment:19 Changed 5 years ago by anonymous

My problem is not due to a huge ticket size.
I extracted the ticket content from the database and I am attacing.

Changed 5 years ago by anonymous

comment:20 Changed 5 years ago by cboos

  • Component changed from report system to wiki
  • Description modified (diff)
  • Milestone set to 0.10.1

Right, problem reproduced. Thanks for having extracted the ticket35.txt ;)

comment:21 Changed 5 years ago by cboos

Ok, the problem comes from the definition list regexp. The stuff I added for being a bit more robust in the presence of `...` quotes have some performance issues (ref #2082, #2083).

comment:22 Changed 5 years ago by cboos

  • Resolution set to fixed
  • Status changed from new to closed

Above issue fixed by r3949:3950.

comment:23 Changed 5 years ago by cboos

  • Summary changed from Reports takes minutes to compleet to Reports takes minutes to complete

comment:24 Changed 5 years ago by anonymous

great, thanks.

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
to The owner will be changed from cboos. Next status will be 'closed'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.