<type 'exceptions.UnboundLocalError'>
Python 2.6.5: /usr/bin/python
Thu Feb 9 05:46:42 2012

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

 /usr/local/lib/python2.6/dist-packages/flup/middleware/error.py in __call__(self=<app.middleware.error.JakErrorMiddleware object>, environ={'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,text/xml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': '_SID_=IM6j3FuYoENtRV4pwtfTgl8k4pqxK2zs', 'HTTP_HOST': 'greatwire.com', ...}, start_response=<function start_response>)
  330         """
  331         try:
  332             return _wrapIterator(self._application(environ, start_response),
  333                                  self, environ, start_response)
  334         except:
global _wrapIterator = <function _wrapIterator>, self = <app.middleware.error.JakErrorMiddleware object>, self._application = <app.middleware.mysql.MySQLMiddleware instance>, environ = {'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,text/xml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': '_SID_=IM6j3FuYoENtRV4pwtfTgl8k4pqxK2zs', 'HTTP_HOST': 'greatwire.com', ...}, start_response = <function start_response>
 /home/greatwire.com/app/middleware/mysql.py in __call__(self=<app.middleware.mysql.MySQLMiddleware instance>, environ={'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,text/xml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': '_SID_=IM6j3FuYoENtRV4pwtfTgl8k4pqxK2zs', 'HTTP_HOST': 'greatwire.com', ...}, start_response=<function start_response>)
   49 
   50         try:
   51             return self._application(environ,start_response)
   52             result = self._application(environ, my_start_response)
   53         finally:
self = <app.middleware.mysql.MySQLMiddleware instance>, self._application = <app.middleware.session.MySessionMiddleware object>, environ = {'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,text/xml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': '_SID_=IM6j3FuYoENtRV4pwtfTgl8k4pqxK2zs', 'HTTP_HOST': 'greatwire.com', ...}, start_response = <function start_response>
 /home/greatwire.com/app/middleware/session.py in __call__(self=<app.middleware.session.MySessionMiddleware object>, environ={'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,text/xml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': '_SID_=IM6j3FuYoENtRV4pwtfTgl8k4pqxK2zs', 'HTTP_HOST': 'greatwire.com', ...}, start_response=<function start_response>)
   50 
   51         try:
   52             result = self._application(environ, my_start_response)
   53         except:
   54             # If anything goes wrong, ensure the session is checked back in.
result undefined, self = <app.middleware.session.MySessionMiddleware object>, self._application = <flup.publisher.Publisher object>, environ = {'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,text/xml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': '_SID_=IM6j3FuYoENtRV4pwtfTgl8k4pqxK2zs', 'HTTP_HOST': 'greatwire.com', ...}, my_start_response = <function my_start_response>
 /usr/local/lib/python2.6/dist-packages/flup/publisher.py in __call__(self=<flup.publisher.Publisher object>, environ={'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,text/xml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': '_SID_=IM6j3FuYoENtRV4pwtfTgl8k4pqxK2zs', 'HTTP_HOST': 'greatwire.com', ...}, start_response=<function my_start_response>)
  459             try:
  460                 # Call the function.
  461                 transaction.run(func)
  462             except InternalRedirect, r:
  463                 # Internal redirect. Set up environment and resolve again.
transaction = <flup.publisher.Transaction object>, transaction.run = <bound method Transaction.run of <flup.publisher.Transaction object>>, func = <Catalog.Catalog object>
 /usr/local/lib/python2.6/dist-packages/flup/publisher.py in run(self=<flup.publisher.Transaction object>, func=<Catalog.Catalog object>)
  327         try:
  328             # Call the function.
  329             result = self.call(func, self._args)
  330         except Action, a:
  331             # Caught an Action, have it do whatever it does
result undefined, self = <flup.publisher.Transaction object>, self.call = <bound method Transaction.call of <flup.publisher.Transaction object>>, func = <Catalog.Catalog object>, self._args = {'trans': <flup.publisher.Transaction object>, 'transaction': <flup.publisher.Transaction object>}
 /usr/local/lib/python2.6/dist-packages/flup/publisher.py in call(self=<flup.publisher.Transaction object>, func=<Catalog.Catalog object>, args={'trans': <flup.publisher.Transaction object>, 'transaction': <flup.publisher.Transaction object>})
  318         trimkw(args, expected, varkw)
  319 
  320         return func(**args)
  321 
  322     def run(self, func):
func = <Catalog.Catalog object>, args = {'trans': <flup.publisher.Transaction object>, 'transaction': <flup.publisher.Transaction object>}
 /home/greatwire.com/app/plugins/Catalog.py in __call__(self=<Catalog.Catalog object>, **kw={'trans': <flup.publisher.Transaction object>, 'transaction': <flup.publisher.Transaction object>})
   38         if nodePath == '/ContextLink':
   39             return self.contextLink(self._request.environ)
   40         node= self.nodeRecordByPath(nodePath)
   41         try:
   42             if node:
node undefined, self = <Catalog.Catalog object>, self.nodeRecordByPath = <bound method Catalog.nodeRecordByPath of <Catalog.Catalog object>>, nodePath = '/Central-Office-Products/Cable-Tray-Systems/'
 /home/greatwire.com/app/lib/node/nodePublisher.py in nodeRecordByPath(self=<Catalog.Catalog object>, nodePath='/Central-Office-Products/Cable-Tray-Systems/')
  159         nodeStat = self.statNodePath(nodePath)
  160         if nodeStat:
  161             if self.nodeDetailsByStat(nodeStat):
  162                 return nodeStat
  163         elif not nodePath.endswith('/'):
self = <Catalog.Catalog object>, self.nodeDetailsByStat = <bound method Catalog.nodeDetailsByStat of <Catalog.Catalog object>>, nodeStat = {'nodeHasCategories': 2L, 'nodeHasChildren': 2L, 'nodeHasItems': 0L, 'nodeId': 1613L, 'nodeParentId': 1198L, 'nodePublished': 1L, 'nodeType': 1L}
 /home/greatwire.com/app/lib/node/nodePublisher.py in nodeDetailsByStat(self=<Catalog.Catalog object>, nodeStat={'nodeHasCategories': 2L, 'nodeHasChildren': 2L, 'nodeHasItems': 0L, 'nodeId': 1613L, 'nodeParentId': 1198L, 'nodePublished': 1L, 'nodeType': 1L})
  143         else:
  144             nodeDetails = self._itemNodeDetails(nodeStat['nodeId'])
  145         nodeStat.update(nodeDetails)
  146         if nodeDetails:
  147             return True
nodeStat = {'nodeHasCategories': 2L, 'nodeHasChildren': 2L, 'nodeHasItems': 0L, 'nodeId': 1613L, 'nodeParentId': 1198L, 'nodePublished': 1L, 'nodeType': 1L}, nodeStat.update = <built-in method update of dict object>, nodeDetails undefined

<type 'exceptions.UnboundLocalError'>: local variable 'nodeDetails' referenced before assignment
      args = ("local variable 'nodeDetails' referenced before assignment",)
      message = "local variable 'nodeDetails' referenced before assignment"