Hi,
I have been using roundup 0.5.6 for some time now
without any problems. I recently added a new string field
to the database schema (in dbinit.py), and used admin
web login to add allowable values for this new field.
Then I started going through the existing issues to
update this new field. The problem is that I get the
following error when updating some (very unpredictable)
issues - at which point the issue is corrupt and cannot
be repaired. I use anydbm as the database. I tried
upgrading to python 2.2.3 and roundup 0.5.9 but it still
happens. (I prefer not to move to sqlite for this tracker
as I guess I would then lose all of the history for
issues?).
Any help would be greatly appreciated. Please let me
know if you need any more information.
Thanks,
Paul
Templating Error
Debugging information follows
While evaluating the standard:'context/history'
expression on line 174 Current variables:
templates <roundup.cgi.templating.Templates instance
at 0x015A0DB8>
repeat <roundup.cgi.PageTemplates.TALES.SafeMapping
instance at 0x015A1988>
default <roundup.cgi.PageTemplates.TALES.Default
instance at 0x009A7DE0>
db <roundup.cgi.templating.HTMLDatabase instance at
0x015A1AD8>
utils <roundup.cgi.templating.utils instance at
0x015A1B48>
request <roundup.cgi.templating.HTMLRequest instance
at 0x015A0C68>
tracker <module '_roundup_tracker_1'
from 'f:\odt\roundup\trackers\siren\__init__.pyo'>
context <HTMLItem(0x15a1bb8) issue 238>
nothing None
config <module '_roundup_tracker_1.config'
from 'f:\odt\roundup\trackers\siren\config.pyo'>
options {'ok_message': ['client edited
ok'], 'error_message': []}
loop <roundup.cgi.PageTemplates.TALES.SafeMapping
instance at 0x015A1988>
attrs {'tal:replace': 'structure context/history'}
A problem occurred in your template "issue.item".
Full traceback:
Traceback (most recent call last):
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\client.py", line 440, in
renderContext
return pt.render(self, None, None, **args)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\templating.py", line 187, in render
getEngine().getContext(c), output, tal=1,
strictinsert=0)()
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 154,
in __call__
self.interpret(self.program)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 186,
in interpret
handlers[opcode](self, args)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 525,
in do_useMacro
self.interpret(macro)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 186,
in interpret
handlers[opcode](self, args)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 549,
in do_defineSlot
self.interpret(slot)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 186,
in interpret
handlers[opcode](self, args)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 491,
in do_condition
self.interpret(block)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 186,
in interpret
handlers[opcode](self, args)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 345,
in do_optTag_tal
self.do_optTag(stuff)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 330,
in do_optTag
return self.no_tag(start, program)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 325,
in no_tag
self.interpret(program)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 186,
in interpret
handlers[opcode](self, args)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\TAL\TALInterpreter.py", line 432,
in do_insertStructure_tal
structure = self.engine.evaluateStructure(expr)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\PageTemplates\TALES.py", line
225, in evaluate
v = expression(self)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\PageTemplates\Expressions.py",
line 188, in __call__
return self._eval(econtext)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\PageTemplates\Expressions.py",
line 183, in _eval
return render(ob, econtext.vars)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\PageTemplates\Expressions.py",
line 89, in render
ob = ob()
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\cgi\templating.py", line 519, in history
history = self._klass.history(self._nodeid)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\backends\back_anydbm.py", line
1359, in history
return self.db.getjournal(self.classname, nodeid)
File "C:\ODT02L~1\PROG\PYTHON~1.3\lib\site-
packages\roundup\backends\back_anydbm.py", line 510,
in getjournal
raise IndexError, 'no such %s %s'%(classname,
nodeid)
IndexError: no such issue 238
|