<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 12 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Hi,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I have a loop that gets PKI tokens from Keystone (RC2). After about 116 loops I get the following error and have to reset Keystone to continue. Has anyone else run into this?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Mark<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="color:#1F497D">(keystone.auth.controllers): 2013-03-29 11:14:01,274 ERROR (OperationalError) (1040, 'Too many connections') None None<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Traceback (most recent call last):<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/auth/controllers.py", line 286, in authenticate_for_token<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    self.authenticate(context, auth_info, auth_context)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/auth/controllers.py", line 352, in authenticate<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    auth_context)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/auth/plugins/password.py", line 108, in authenticate<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    user_info = UserAuthInfo(context, auth_payload)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/auth/plugins/password.py", line 36, in __init__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    self._validate_and_normalize_auth_data(auth_payload)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/auth/plugins/password.py", line 87, in _validate_and_normalize_auth_data<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    domain_ref = self._lookup_domain(user_info['domain'])<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/auth/plugins/password.py", line 60, in _lookup_domain<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    context=self.context, domain_name=domain_name)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/common/manager.py", line 47, in _wrapper<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return f(*args, **kw)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/common/sql/core.py", line 272, in wrapper<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return method(*args, **kwargs)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/keystone-2013.1.rc2-py2.7.egg/keystone/identity/backends/sql.py", line 589, in get_domain_by_name<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    ref = session.query(Domain).filter_by(name=domain_name).one()<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/orm/query.py", line 2184, in one<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    ret = list(self)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/orm/query.py", line 2227, in __iter__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return self._execute_and_instances(context)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/orm/query.py", line 2240, in _execute_and_instances<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    close_with_result=True)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/orm/query.py", line 2231, in _connection_from_session<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    **kw)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/orm/session.py", line 777, in connection<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    close_with_result=close_with_result)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/orm/session.py", line 783, in _connection_for_bind<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return engine.contextual_connect(**kwargs)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2489, in contextual_connect<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    self.pool.connect(),<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/pool.py", line 236, in connect<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return _ConnectionFairy(self).checkout()<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/pool.py", line 401, in __init__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    rec = self._connection_record = pool._do_get()<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/pool.py", line 746, in _do_get<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    con = self._create_connection()<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/pool.py", line 189, in _create_connection<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return _ConnectionRecord(self)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/pool.py", line 282, in __init__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    self.connection = self.__connect()<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/pool.py", line 344, in __connect<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    connection = self.__pool._creator()<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/engine/strategies.py", line 80, in connect<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return dialect.connect(*cargs, **cparams)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/local/lib/python2.7/dist-packages/SQLAlchemy-0.7.9-py2.7-linux-x86_64.egg/sqlalchemy/engine/default.py", line 281, in connect<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return self.dbapi.connect(*cargs, **cparams)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/lib/python2.7/dist-packages/MySQLdb/__init__.py", line 81, in Connect<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    return Connection(*args, **kwargs)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">  File "/usr/lib/python2.7/dist-packages/MySQLdb/connections.py", line 187, in __init__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">    super(Connection, self).__init__(*args, **kwargs2)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">OperationalError: (OperationalError) (1040, 'Too many connections') None None<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">(access): 2013-03-29 11:14:01,278 INFO 15.253.58.148 - - [29/Mar/2013:18:14:01 +0000] "POST http://15.253.58.165:35357/v3/auth/tokens HTTP/1.0" 401 125<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">(eventlet.wsgi.server): 2013-03-29 11:14:01,279 DEBUG 15.253.58.148 - - [29/Mar/2013 11:14:01] "POST /v3/auth/tokens HTTP/1.1" 401 290 0.017322<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>