Baruwa kicks out a WebApp error email:
URL: http://relay-3.domain.com/.json?_=1360876657972
Module weberror.errormiddleware:162 in __call__
<< __traceback_supplement__ = Supplement, self, environ
sr_checker = ResponseStartChecker(start_response)
app_iter = self.application(environ, sr_checker)
return self.make_catching_iter(app_iter, environ,
sr_checker)
except:
app_iter = self.application(environ, sr_checker)
Module repoze.who.middleware:107 in __call__
<< wrapper = StartResponseWrapper(start_response)
app_iter = app(environ, wrapper.wrap_start_response)
# The challenge decider almost(?) always needs
information from the
app_iter = app(environ, wrapper.wrap_start_response)
Module beaker.middleware:155 in __call__
<< headers.append(('Set-cookie', cookie))
return start_response(status, headers, exc_info)
return self.wrap_app(environ, session_start_response)
def _get_session(self):
return self.wrap_app(environ, session_start_response)
Module routes.middleware:131 in __call__
<< r'\1', oldpath)
response = self.app(environ, start_response)
# Wrapped in try as in rare cases the attribute will
be gone already
response = self.app(environ, start_response)
Module pylons.wsgiapp:103 in __call__
<< controller = self.resolve(environ, start_response)
response = self.dispatch(controller, environ,
start_response)
response_obj = callable(response)
response = self.dispatch(controller, environ, start_response)
Module pylons.wsgiapp:313 in dispatch
<< if log_debug:
log.debug("Calling controller class with WSGI
interface")
return controller(environ, start_response)
def load_test_env(self, environ):
return controller(environ, start_response)
Module baruwa.lib.base:81 in __call__
<< totals = DailyTotals(Session, self.identity['user'])
mailq = MailQueue(Session, self.identity['user'])
c.baruwa_totals = totals.get()
c.baruwa_inbound = mailq.get(1)[0]
c.baruwa_outbound = mailq.get(2)[0]
c.baruwa_totals = totals.get()
Module baruwa.lib.query:293 in get
<< cachekey = 'dailytotals-%s-%s' % (self.user.username,
hostname)
self.query =
self.query.options(FromCache('sql_cache_short', cachekey))
return self.query.one()
return self.query.one()
Module sqlalchemy.orm.query:2209 in one
<< """
ret = list(self)
l = len(ret)
ret = list(self)
Module baruwa.lib.caching_query:75 in __iter__
<< """
if hasattr(self, '_cache_parameters'):
return self.get_value(createfunc=lambda:
list(Query.__iter__(self)))
else:
return Query.__iter__(self)
return self.get_value(createfunc=lambda: list(Query.__iter__(self)))
Module baruwa.lib.caching_query:94 in get_value
<< cache, cache_key = _get_cache_parameters(self)
#cache_key = cache_key[:249]
ret = cache.get_value(str(cache_key),
createfunc=createfunc)
if merge:
ret = self.merge_result(ret, load=False)
ret = cache.get_value(str(cache_key), createfunc=createfunc)
Module beaker.cache:305 in get
<< def get(self, key, **kw):
"""Retrieve a cached value from the container"""
return self._get_value(key, **kw).get_value()
get_value = get
return self._get_value(key, **kw).get_value()
Module beaker.container:339 in get_value
<< self.namespace.acquire_read_lock()
try:
has_value = self.has_value()
if has_value:
try:
has_value = self.has_value()
Module beaker.container:301 in has_value
<< self.namespace.acquire_read_lock()
try:
return self.key in self.namespace
finally:
self.namespace.release_read_lock()
return self.key in self.namespace
Module beaker.ext.memcached:176 in __contains__
<< def __contains__(self, key):
with self.pool.reserve() as mc:
value = mc.get(self._format_key(key))
return value is not None
value = mc.get(self._format_key(key))
UnknownReadFailure: error 7 from
memcached_get(dailytotals-root-None_count(mess): UNKNOWN READ FAILURE
CGI Variables
AUTH_TYPE 'cookie'
DOCUMENT_ROOT '/etc/apache2/htdocs'
GATEWAY_INTERFACE 'CGI/1.1'
HTTP_ACCEPT 'application/json, text/javascript, */*; q=0.01'
HTTP_ACCEPT_ENCODING 'gzip, deflate'
HTTP_ACCEPT_LANGUAGE 'en-us,en;q=0.5'
HTTP_CONNECTION 'keep-alive'
HTTP_COOKIE
'baruwa=581b94e37004f54d7b954bc0de3bf99b6a087303258fa4fcb65c48e693dae9f865827ce6;
baruwaauth="593b87ba20bdc4cab5ed7ade0ef566d2511d15f0root!<repoze.who.plugins.sa.SQLAlchemyAuthenticatorPlugin
object at 0x7f29821c35d0>,!userid_type:unicode";
baruwaauth="593b87ba20bdc4cab5ed7ade0ef566d2511d15f0root!<repoze.who.plugins.sa.SQLAlchemyAuthenticatorPlugin
object at 0x7f29821c35d0>,!userid_type:unicode"'
HTTP_HOST 'relay-3.domain.com'
HTTP_REFERER 'http://relay-3.domain.com/'
HTTP_USER_AGENT 'Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:11.0)
Gecko/20100101 Firefox/11.0'
HTTP_X_LAST_TIMESTAMP 'Thursday, 14 Feb 2013 21:16:30 +00'
HTTP_X_REQUESTED_WITH 'XMLHttpRequest'
PATH_INFO '/.json'
PATH_TRANSLATED
'/home/baruwa/px/lib/python2.7/site-packages/baruwa/baruwa.wsgi/.json'
QUERY_STRING '_=1360876657972'
REMOTE_ADDR '10.10.1.22'
REMOTE_PORT '36080'
REMOTE_USER u'root'
REMOTE_USER_DATA 'userid_type:unicode'
REMOTE_USER_TOKENS
['<repoze.who.plugins.sa.SQLAlchemyAuthenticatorPlugin object at
0x7f29821c35d0>', '']
REQUEST_METHOD 'GET'
REQUEST_URI '/.json?_=1360876657972'
SCRIPT_FILENAME
'/home/baruwa/px/lib/python2.7/site-packages/baruwa/baruwa.wsgi'
SERVER_ADDR '10.10.1.42'
SERVER_ADMIN '[no address given]'
SERVER_NAME 'relay-3.domain.com'
SERVER_PORT '80'
SERVER_PROTOCOL 'HTTP/1.1'
SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at
relay-3.domain.com Port 80</address>\n'
SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)'
WSGI Variables
application <baruwa.lib.auth.middleware.BaruwaPAM object at
0x7f97a8bcdad0>
beaker.get_session <bound method SessionMiddleware._get_session of
<beaker.middleware.SessionMiddleware object at 0x7f97ab157590>>
beaker.session {'_accessed_time': 1360876658.376974,
'_creation_time': 1360876658.376974}
mod_wsgi.application_group 'relay-3.domain.com|'
mod_wsgi.callable_object 'application'
mod_wsgi.handler_script ''
mod_wsgi.input_chunked '0'
mod_wsgi.listener_host ''
mod_wsgi.listener_port '80'
mod_wsgi.process_group ''
mod_wsgi.request_handler 'wsgi-script'
mod_wsgi.script_reloading '1'
mod_wsgi.version (3, 3)
paste.cookies (<SimpleCookie:
baruwa='581b94e37004f54d7b954bc0de3bf99b6a087303258fa4fcb65c48e693dae9f865827ce6'
baruwaauth='593b87ba20bdc4cab5ed7ade0ef566d2511d15f0root!<repoze.who.plugins.sa.SQLAlchemyAuthenticatorPlugin
object at 0x7f29821c35d0>,!userid_type:unicode'>,
'baruwa=581b94e37004f54d7b954bc0de3bf99b6a087303258fa4fcb65c48e693dae9f865827ce6;
baruwaauth="593b87ba20bdc4cab5ed7ade0ef566d2511d15f0root!<repoze.who.plugins.sa.SQLAlchemyAuthenticatorPlugin
object at 0x7f29821c35d0>,!userid_type:unicode";
baruwaauth="593b87ba20bdc4cab5ed7ade0ef566d2511d15f0root!<repoze.who.plugins.sa.SQLAlchemyAuthenticatorPlugin
object at 0x7f29821c35d0>,!userid_type:unicode"')
paste.parsed_dict_querystring (MultiDict([('_',
'1360876657972')]), '_=1360876657972')
paste.parsed_querystring ([('_', '1360876657972')],
'_=1360876657972')
paste.registry <paste.registry.Registry object at 0x7f97aa8c2fd0>
paste.throw_errors True
pylons.controller <baruwa.controllers.messages.MessagesController
object at 0x7f97acbd4a10>
pylons.environ_config {'session': 'beaker.session', 'cache':
'beaker.cache'}
pylons.log_debug False
pylons.pylons <pylons.util.PylonsContext object at 0x7f97acbd4d10>
pylons.routes_dict {'action': u'index', 'controller':
u'messages', 'format': u'json'}
repoze.what.adapters {'groups': {}, 'permissions': {}}
repoze.what.credentials {'repoze.what.userid': u'root', 'groups':
(), 'permissions': ()}
repoze.who.identity <repoze.who identity (hidden, dict-like) at
140289378677680>
repoze.who.logger None
repoze.who.plugins {'authorization_md':
<repoze.what.middleware.AuthorizationMetadata object at
0x7f97ab271f90>, 'form': <FriendlyFormPlugin 140289387152400>,
'baruwa_pop3_auth': <baruwa.lib.auth.pop3auth.BaruwaPOPAuthPlugin
object at 0x7f97ab200990>, 'baruwa_smtp_auth':
<baruwa.lib.auth.smtpauth.BaruwaSMTPAuthPlugin object at
0x7f97ab200890>, 'baruwa_radius_auth':
<baruwa.lib.auth.radiusauth.BaruwaRadiusAuthPlugin object at
0x7f97ab16c690>, 'sa_auth':
<repoze.who.plugins.sa.SQLAlchemyAuthenticatorPlugin object at
0x7f97ab1645d0>, 'auth_tkt': <AuthTktCookiePlugin 140289388203344>,
'baruwa_imap_auth': <baruwa.lib.auth.imapauth.BaruwaIMAPAuthPlugin
object at 0x7f97ab24c350>, 'sa_md':
<repoze.who.plugins.sa.SQLAlchemyUserMDPlugin object at
0x7f97ab255210>, 'baruwa_ldap_auth': <BaruwaLDAPAuthPlugin
140289387153936>}
routes.route <routes.route.Route object at 0x7f97aaf05e90>
routes.url <routes.util.URLGenerator object at 0x7f97aa8c2750>
webob._parsed_query_vars (GET([(u'_', u'1360876657972')]),
'_=1360876657972')
wsgi process 'Multiprocess'
wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter
object at 0x7f97acaa9210>
wsgi.version (1, 1)
wsgiorg.routing_args (<routes.util.URLGenerator object at
0x7f97aa8c2750>, {'action': u'index', 'controller': u'messages',
'format': u'json'})
On 02/18/2013 02:12 PM, Mark Chaney wrote:
I am not sure if the Mailscanner DB came into play with that though.
Maybe it does. BTW, what log are you seeing that memcache error?
On 2013-02-18 14:01, Raymond Norton wrote:
There was some discussion about that. Andrew recommends a separate
database for a cluster set up, but my setup should work. Just not
finding the info I need to resolve the issues.
On 02/18/2013 01:53 PM, Mark Chaney wrote:
Right, but if A is down, then B's mailscanner wont work at all.
On 2013-02-18 13:48, Raymond Norton wrote:
Scanner A postgres is listening for remote connections (Same
credentials for both servers). I can successfully login via psql,
so I
don't think this is the issue.
On 02/18/2013 01:39 PM, Mark Chaney wrote:
Im not sure what kind of failback that mailscanner has, but
couldnt it potentially fail to even function if the remote
postgresql server isnt available?
On 2013-02-15 14:13, Raymond Norton wrote:
Going by the clustering info in the docs. I have added node B
to my
main scanner "A". Node "A" is set as my database and memcached
server.
On node "A" I set memcached.conf to listen on all interfaces (-l
0.0.0.0). I can telnet to port 11211 from node B to A
On both nodes I set all memcached lines in production.ini to
10.10.1.41:11211
Node B I also set MailScanner.conf to DB DSN =
DBI:Pg:database=baruwa;host=10.10.1.41;port=5432 (Node A)
On Node B I also set the following in production.ini:
sqlalchemy.url =
postgresql://baruwa:[email protected]:5432/baruwa
I stopped memcache on node B for testing.
There may be changes I still need to make, but at the moment I am
getting the following error when I check stats for node "B"
from node
"A", attempt to run reports, etc...
:
UNKNOWNREADFAILURE: ERROR 7 FROM
MEMCACHED_GET(MQ-ROOT-NONE-2_COUNT(MAILQ.ID)_2): UNKNOWN READ
FAILURE
CGI Variables
-- Raymond Norton
LCTN
952.955.7766
_______________________________________________
Keep Baruwa FREE - http://pledgie.com/campaigns/12056
_______________________________________________
Keep Baruwa FREE - http://pledgie.com/campaigns/12056
_______________________________________________
Keep Baruwa FREE - http://pledgie.com/campaigns/12056
_______________________________________________
Keep Baruwa FREE - http://pledgie.com/campaigns/12056
_______________________________________________
Keep Baruwa FREE - http://pledgie.com/campaigns/12056
_______________________________________________
Keep Baruwa FREE - http://pledgie.com/campaigns/12056
_______________________________________________
Keep Baruwa FREE - http://pledgie.com/campaigns/12056