--> -->

# OSError

[Errno 13] Permission denied: '/usr/share/moin/underlay/pages/HelpOnMacros(2f)MonthCalendar/cache'

If you want to report a bug, please save this page and attach it to your bug report.

- Show debugging information
- Report bug
- Visit MoinMoin wiki

## Traceback

A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.

1. /var/lib/python-support/python2.4/MoinMoin/request.py in run (self=<MoinMoin.request.RequestModPy object>)

   1. 1171 self.page.send_page(self, msg=msg)
   2. 1172 else:
   3. 1173 handler(self.page.page_name, self)
   4. 1174
   5. 1175 # generate page footer (actions that do not want this footer use
   - handler = <function execute>
   - self = <MoinMoin.request.RequestModPy object>
   - self.page = <MoinMoin.Page.Page instance>
   - self.page.page_name = u'Projects/Input'

2. /var/lib/python-support/python2.4/MoinMoin/action/fullsearch.py in execute (pagename=u'Projects/Input', request=<MoinMoin.request.RequestModPy object>, fieldname='value', titlesearch=1)

   1. 71 query = search.QueryParser(case=case, regex=regex,
   2. 72 titlesearch=titlesearch).parse_query(needle)
   3. 73 results = search.searchPages(request, query)
   4. 74
   5. 75 # directly show a single hit
   - results undefined
   - search = <module 'MoinMoin.search' from '/var/lib/python-support/python2.4/MoinMoin/search.pyc'>
   - search.searchPages = <function searchPages>
   - request = <MoinMoin.request.RequestModPy object>
   - query = <MoinMoin.search.LinkSearch instance>

3. /var/lib/python-support/python2.4/MoinMoin/search.py in searchPages (request=<MoinMoin.request.RequestModPy object>, query=<MoinMoin.search.LinkSearch instance>, **kw={})

   1. 1265 @rtype: SearchResults instance
   2. 1266 @return: search results
   3. 1267 """
   4. 1268 return Search(request, query).run()
   5. 1269
   - global Search = <class MoinMoin.search.Search>
   - request = <MoinMoin.request.RequestModPy object>
   - query = <MoinMoin.search.LinkSearch instance>
   - ).run undefined

4. /var/lib/python-support/python2.4/MoinMoin/search.py in run (self=<MoinMoin.search.Search instance>)

   1. 1166 hits = self._lupySearch()
   2. 1167 else:
   3. 1168 hits = self._moinSearch()
   4. 1169
   5. 1170 # important - filter deleted pages or pages the user may not read!
   - hits undefined
   - self = <MoinMoin.search.Search instance>
   - self._moinSearch = <bound method Search._moinSearch of <MoinMoin.search.Search instance>>

5. /var/lib/python-support/python2.4/MoinMoin/search.py in _moinSearch (self=<MoinMoin.search.Search instance>, pages=[(u'+\u5f55\u97f3\u7535\u8bdd\u7684\u641e\u7b11\u8bbe\u7f6ejingke+', ''), (u'zdbgdfjhgjh', ''), (u'\u5317\u4eac\u76d1\u63a7Jkijij', ''), (u'HelpOnEditing', ''), (u'DevPrivates', ''), (u'UpdateProblems', ''), (u'BodMeetingSummaries-08-22-2006', ''), (u'testgroup/dpmsext', ''), (u'Other/Press/X11R682Released', ''), (u'HelpOnAccessControlLists', ''), (u'VideoDriverFAQ', ''), (u'WikiCourse', ''), (u'WikiCourse/BasicIntroduction/195 Actions', ''), (u'Russian+Translation', ''), (u'changessince68', ''), (u'CvsBranchnames', ''), (u'NewWikiStructure', ''), (u'GitUIBugs', ''), (u'LinuxTagMeeting2005Daniel', ''), (u'linuxtagmeeting2005gunnar', ''), ...])

   1. 1227 hits.append((page, attachment, None))
   2. 1228 else:
   3. 1229 match = self.query.search(page)
   4. 1230 if match:
   5. 1231 hits.append((page, attachment, match))
   - match = None
   - self = <MoinMoin.search.Search instance>
   - self.query = <MoinMoin.search.LinkSearch instance>
   - self.query.search = <bound method LinkSearch.search of <MoinMoin.search.LinkSearch instance>>
   - page = <MoinMoin.Page.Page instance>

6. /var/lib/python-support/python2.4/MoinMoin/search.py in search (self=<MoinMoin.search.LinkSearch instance>, page=<MoinMoin.Page.Page instance>)

   1. 398 Found = True
   2. 399
   3. 400 for link in page.getPageLinks(page.request):
   4. 401 if ((self.static and self.pattern == link) or
   5. 402 (not self.static and self.search_re.match(link))):
   - link undefined
   - page = <MoinMoin.Page.Page instance>
   - page.getPageLinks = <bound method Page.getPageLinks of <MoinMoin.Page.Page instance>>
   - page.request = <MoinMoin.request.RequestModPy object>

7. /var/lib/python-support/python2.4/MoinMoin/Page.py in getPageLinks (self=<MoinMoin.Page.Page instance>, request=<MoinMoin.request.RequestModPy object>)

   1. 1529 if not self.exists():
   2. 1530 return []
   3. 1531 cache = caching.CacheEntry(request, self, 'pagelinks')
   4. 1532 if cache.needsUpdate(self._text_filename()):
   5. 1533 links = self.parsePageLinks(request)
   - cache undefined
   - global caching = <module 'MoinMoin.caching' from '/var/lib/python-support/python2.4/MoinMoin/caching.pyc'>
   - caching.CacheEntry = <class MoinMoin.caching.CacheEntry>
   - request = <MoinMoin.request.RequestModPy object>
   - self = <MoinMoin.Page.Page instance>

8. /var/lib/python-support/python2.4/MoinMoin/caching.py in __init__ (self=<MoinMoin.caching.CacheEntry instance>, request=<MoinMoin.request.RequestModPy object>, arena=<MoinMoin.Page.Page instance>, key='pagelinks')

   1. 27 filesys.makeDirs(self.arena_dir)
   2. 28 else: # arena is in fact a page object
   3. 29 self.arena_dir = arena.getPagePath('cache', check_create=1)
   4. 30 self.lock_dir = os.path.join(self.arena_dir, '__lock__')
   5. 31 self.rlock = lock.LazyReadLock(self.lock_dir, 60.0)
   - self = <MoinMoin.caching.CacheEntry instance>
   - self.arena_dir undefined
   - arena = <MoinMoin.Page.Page instance>
   - arena.getPagePath = <bound method Page.getPagePath of <MoinMoin.Page.Page instance>>
   - check_create undefined

9. /var/lib/python-support/python2.4/MoinMoin/Page.py in getPagePath (self=<MoinMoin.Page.Page instance>, *args=('cache',), **kw={'check_create': 1})

   1. 348 """Return path to the page storage area."""
   2. 349
   3. 350 return self.getPageStatus(*args, **kw)[1]
   4. 351
   5. 352 def split_title(self, request, force=0):
   - self = <MoinMoin.Page.Page instance>
   - self.getPageStatus = <bound method Page.getPageStatus of <MoinMoin.Page.Page instance>>
   - args = ('cache',)
   - kw = {'check_create': 1}

10. /var/lib/python-support/python2.4/MoinMoin/Page.py in getPageStatus (self=<MoinMoin.Page.Page instance>, *args=('cache',), **kw={'check_create': 1})

    1. 342 dirname = fullpath
    2. 343 if not os.path.exists(dirname):
    3. 344 filesys.makeDirs(dirname)
    4. 345 return underlay, fullpath
    5. 346
    - global filesys = <module 'MoinMoin.util.filesys' from '/var/lib/python-support/python2.4/MoinMoin/util/filesys.pyc'>
    - filesys.makeDirs = <function makedirs>
    - dirname = '/usr/share/moin/underlay/pages/HelpOnMacros(2f)MonthCalendar/cache'

11. /var/lib/python-support/python2.4/MoinMoin/util/filesys.py in makedirs (name='/usr/share/moin/underlay/pages/HelpOnMacros(2f)MonthCalendar/cache', mode=511)

    1. 49 return
    2. 50 try:
    3. 51 os.mkdir(name, mode & config.umask)
    4. 52 except OSError, err:
    5. 53 if err.errno != errno.EEXIST:
    - global os = <module 'os' from '/usr/lib/python2.4/os.pyc'>
    - os.mkdir = <built-in function mkdir>
    - name = '/usr/share/moin/underlay/pages/HelpOnMacros(2f)MonthCalendar/cache'
    - mode = 511
    - global config = <module 'MoinMoin.config' from '/var/lib/python-support/python2.4/MoinMoin/config.pyc'>
    - config.umask = 504

### OSError

[Errno 13] Permission denied: '/usr/share/moin/underlay/pages/HelpOnMacros(2f)MonthCalendar/cache'

- args = (13, 'Permission denied')
- errno = 13
- filename = '/usr/share/moin/underlay/pages/HelpOnMacros(2f)MonthCalendar/cache'
- strerror = 'Permission denied'

## System Details

- Date: Sun, 04 Nov 2007 12:41:29 +0000
- Platform: Linux annarchy 2.6.17.6 #1 SMP Sun Jul 16 00:58:36 PDT 2006 x86_64
- Python: Python 2.4.4 (/usr/bin/python)
- MoinMoin: Release 1.5.7 (release)