#10190 closed defect (cantfix)
"OverflowError: regular expression code size limit exceed"
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | wiki system | Version: | |
Severity: | normal | Keywords: | OverflowError |
Cc: | Branch: | ||
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description (last modified by )
When view wiki page, do not process cause by error.
Python Traceback
File "D:/TracLight/.egg-cache/trac-0.12.ja1-py2.6.egg-tmp/trac/wiki/templates/wiki_view.html", Line 58, Method <Expression u'wiki_to_html(context, text)'> File "build/bdist.win32/egg/trac/wiki/formatter.py", Line 1497, Method format_to_html File "build/bdist.win32/egg/trac/wiki/formatter.py", Line 1452, Method generate File "build/bdist.win32/egg/trac/wiki/formatter.py", Line 1240, Method format File "build/bdist.win32/egg/trac/wiki/parser.py", Line 172, Method _get_rules File "build/bdist.win32/egg/trac/wiki/parser.py", Line 202, Method _prepare_rules File "D:/TracLight/phthon/Lib/re.py", Line 190, Method compile File "D:/TracLight/phthon/Lib/re.py", Line 243, Method _compile File "D:/TracLight/phthon/Lib/sre_compile.py", Line 529, Method compile
System Information:
User Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; Infopath.1) Trac 0.12.ja1 Babel 0.9.5 CustomFieldAdmin 0.2.5 Docutils 0.7 Genshi 0.6 mod_wsgi 3.3(WSGIProcessGroup WSGIApplicationGroup %{GLOBAL}) Pygments 1.3.1 pysqlite 2.4.1 Python 2.6.6(r266:84297, Aug 24 2010,18:46:32)[MSC v.1500 32 bit(Intel)] RPC 1.1.0 setuptools 0.6c11 SQLite 3.5.9 Subversion 1.6.6(r40053) jQuery 1.4.2
Attachments (0)
Change History (8)
comment:1 by , 14 years ago
Description: | modified (diff) |
---|
comment:2 by , 14 years ago
Scary thought that we seem to be close to the size limit for regular expressions :(
comment:3 by , 14 years ago
Stupid me, I managed to miss the ticket's summary ;-)
Well, our wiki_page_name
pattern tags/trac-0.12/trac/wiki/api.py@#L301 is by no means light, thanks to the Ll
and Lu
strings, which maybe doesn't leave much left for the plugins. If there's another one there which is as greedy…
comment:4 by , 13 years ago
When register 10'000 over wikiPages via XML-RPC API (or trac-admin wiki import), this error occured. Then, I remove all imported page record from wiki table, seem to recovery.
Other case,same number of pages,import by 100~1000 count,no error occation.
I want to know how to avoid error stop…
by the way, do you know a way "safe import lot of pages"?
follow-up: 8 comment:5 by , 13 years ago
You must be using the TH:AutoWikifyPlugin.
Then yes, with 10000 pages, such a failure would be expected. You could create an enhancement request on TH for this plugin, asking for ways to better cope with this situation (some ideas: only add to the regexp the page names that don't already follow the conventions for WikiPageNames, find common prefixes and use a match to <prefix>.*
followed by an explicit check against the list, etc.).
comment:6 by , 13 years ago
Resolution: | → cantfix |
---|---|
Status: | new → closed |
comment:7 by , 11 years ago
I'm having this problem on my site, I was previously using AutoWikify, but even after removing it, I can't get rid of this issue. Other than deleting pages, how I can remove the regexp so I'm not up against this limit?
comment:8 by , 10 years ago
Replying to cboos:
Then yes, with 10000 pages, such a failure would be expected. You could create an enhancement request on TH for this plugin, asking for ways to better cope with this situation (some ideas: only add to the regexp the page names that don't already follow the conventions for WikiPageNames, find common prefixes and use a match to
<prefix>.*
followed by an explicit check against the list, etc.).
We'll investigate some of your ideas in th:#11953. Thanks!
You mentioned "OverflowError" in the keywords. Does this mean that your error report is not complete? What's precisely in the trac.log file? (see TracLogging if needed).
Also, try to disable all plugins. Does the error still happen? If not, enable plugins one by one and try to isolate the one introducing the error.