Well, after being away for a while on a cretin project, I'm back to work with cyn.in in our company :) Away, the problem arose. Seems that after we updated to latest cyn.in a while back (actually after the release), we can't use search as a logged in user. Here is the log (notice the variable PATH_INFO):
| Time |
2010/01/22 11:15:05.278 GMT+1 |
| User Name (User Id) |
luka (luka)
|
| Request URL |
http://10.10.0.237/search |
| Exception Type |
IndexError |
| Exception Value |
list index out of range |
Traceback (innermost last):
- Module ZPublisher.Publish, line 119, in publish
- Module ZPublisher.mapply, line 88, in mapply
- Module ZPublisher.Publish, line 42, in call_object
- Module Shared.DC.Scripts.Bindings, line 313, in __call__
- Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec
- Module Products.CMFCore.FSPageTemplate, line 216, in _exec
- Module Products.CacheSetup.patch_cmf, line 28, in FSPT_pt_render
- Module Products.CacheSetup.patch_utils, line 9, in call_pattern
- Module Products.CMFCore.FSPageTemplate, line 155, in pt_render
- Module Products.CacheSetup.patch_cmf, line 74, in PT_pt_render
- Module Products.CacheSetup.patch_utils, line 9, in call_pattern
- Module Products.PageTemplates.PageTemplate, line 98, in pt_render
- Module zope.pagetemplate.pagetemplate, line 117, in pt_render
Warning: Macro expansion failed
Warning: exceptions.IndexError: list index out of range - Module zope.tal.talinterpreter, line 271, in __call__
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 891, in do_useMacro
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 536, in do_optTag_tal
- Module zope.tal.talinterpreter, line 521, in do_optTag
- Module zope.tal.talinterpreter, line 516, in no_tag
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 957, in do_defineSlot
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 536, in do_optTag_tal
- Module zope.tal.talinterpreter, line 521, in do_optTag
- Module zope.tal.talinterpreter, line 516, in no_tag
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 949, in do_defineSlot
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 855, in do_condition
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 824, in do_loop_tal
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 536, in do_optTag_tal
- Module zope.tal.talinterpreter, line 521, in do_optTag
- Module zope.tal.talinterpreter, line 516, in no_tag
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 536, in do_optTag_tal
- Module zope.tal.talinterpreter, line 521, in do_optTag
- Module zope.tal.talinterpreter, line 516, in no_tag
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 855, in do_condition
- Module zope.tal.talinterpreter, line 346, in interpret
- Module zope.tal.talinterpreter, line 688, in do_i18nVariable
IndexError: list index out of range
Display
traceback as text
REQUEST
form
| y |
'0' |
| x |
'0' |
| SearchableText |
'password' |
cookies
| I18N_LANGUAGE |
'en' |
| __ac |
'B+SBvyFTuActiyHgrpqxHuFnZKMgbHVrYV9zYWxlaw==' |
| statusmessages |
None |
lazy items
| SESSION |
<bound method SessionDataManager.getSessionData of <SessionDataManager at /session_data_manager>> |
other
| VIRTUAL_URL_PARTS |
('http://10.10.0.237', 'search') |
| VIRTUAL_URL |
'http://10.10.0.237/search' |
| _ec_cache |
{284020428: <Products.PageTemplates.Expressions.ZopeContext object at 0x10e0580c>} |
| __ac |
'B+SBvyFTuActiyHgrpqxHuFnZKMgbHVrYV9zYWxlaw==' |
| AUTHENTICATION_PATH |
'cynin/virtual_hosting//' |
| disable_border |
1 |
| x |
'0' |
| LANGUAGE |
'en' |
| AUTHENTICATED_USER |
<PloneUser 'luka'> |
| SERVER_URL |
'http://10.10.0.237' |
| traverse_subpath |
[] |
| ACTUAL_URL |
'http://10.10.0.237/search' |
| statusmessages |
None |
| URL |
'http://10.10.0.237/search' |
| I18N_LANGUAGE |
'en' |
| PUBLISHED |
<FSPageTemplate at /cynin/search> |
| TraversalRequestNameStack |
[] |
| _pts_is_rtl |
False |
| VirtualRootPhysicalPath |
('', 'cynin') |
| LANGUAGE_TOOL |
<Products.PloneLanguageTool.LanguageTool.LanguageBinding instance at 0x10edc42c> |
| SearchableText |
'password' |
| BASE1 |
'http://10.10.0.237' |
| BASE2 |
'http://10.10.0.237/search' |
| y |
'0' |
| URL1 |
'http://10.10.0.237' |
| URL0 |
http://10.10.0.237/search |
| URL1 |
http://10.10.0.237 |
| BASE0 |
http://10.10.0.237 |
| BASE1 |
http://10.10.0.237 |
| BASE2 |
http://10.10.0.237/search |
environ
| HTTP_X_FORWARDED_SERVER |
'cynin' |
| HTTP_REFERER |
'http://10.10.0.237/login_form' |
| HTTP_ACCEPT_LANGUAGE |
'en-us,en;q=0.5' |
| SERVER_SOFTWARE |
'Zope/(Zope 2.10.9-final, python 2.4.6, linux2) ZServer/1.1 Plone/3.3.2' |
| SCRIPT_NAME |
'' |
| REQUEST_METHOD |
'GET' |
| PATH_INFO |
'/VirtualHostBase/http/10.10.0uka (luka).237:80/cynin/VirtualHostRoot//search' |
| SERVER_PROTOCOL |
'HTTP/1.1' |
| QUERY_STRING |
'SearchableText=password&x=0&y=0' |
| channel.creation_time |
1264155304 |
| CONNECTION_TYPE |
'Keep-Alive' |
| HTTP_ACCEPT_CHARSET |
'ISO-8859-1,utf-8;q=0.7,*;q=0.7' |
| HTTP_USER_AGENT |
'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.7) Gecko/20100106 Ubuntu/9.10 (karmic) Firefox/3.5.7' |
| HTTP_COOKIE |
'I18N_LANGUAGE="en";
__ac="B+SBvyFTuActiyHgrpqxHuFnZKMgbHVrYV9zYWxlaw==";
statusmessages="A+RXZWxjb21lISBZb3UgYXJlIG5vdyBsb2dnZWQgaW4uaW5mbw=="' |
| SERVER_NAME |
'0.0.0.0' |
| REMOTE_ADDR |
'127.0.0.1' |
| HTTP_VIA |
'1.1 cynin' |
| PATH_TRANSLATED |
'/VirtualHostBase/http/10.10.0.237:80/cynin/VirtualHostRoot/search' |
| SERVER_PORT |
'8080' |
| HTTP_HOST |
'localhost:8080' |
| HTTP_ACCEPT |
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' |
| GATEWAY_INTERFACE |
'CGI/1.1' |
| HTTP_X_FORWARDED_FOR |
'10.10.0.2' |
| HTTP_X_FORWARDED_HOST |
'10.10.0.237' |
| HTTP_ACCEPT_ENCODING |
'gzip,deflate' |
This search error is a syntax typo in the search template file. We've identified and fixed the problem, it's committed in svn trunk. The problem started with an un-checked i18n translation macro that slipped into the code.
The issue is closed and being tracked here: http://odn.cynapse.com/issues/1235
To use the svn version, you'll have to do buildout from source: http://www.cynapse.com/[…]/quickstart-buildout
The SVN trunk URL for Cyn.in core is: http://odn.cynapse.com/svn/cynin/trunk
You can also actually just replace this file into your Cyn.in instance and it should start working, with a restart (and some figuring out of path on hard disk, based on the URL?): http://odn.cynapse.com/[…]/search.pt