<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/redis-py.git, branch sentinel_pool_fix</title>
<subtitle>github.com: andymccurdy/redis-py.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/'/>
<entry>
<title>remove unneccessary checkpid from SentinelConnectionPool</title>
<updated>2019-03-14T23:32:33+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-03-14T23:32:33+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=d61a15e2be5fdeb165b98e63912ab88845ab1315'/>
<id>d61a15e2be5fdeb165b98e63912ab88845ab1315</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>actual 3.2.0</title>
<updated>2019-02-17T21:57:58+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-17T21:57:58+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=31519e4ccef49fb59254ee5524007c81faa7e850'/>
<id>31519e4ccef49fb59254ee5524007c81faa7e850</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>3.2.0</title>
<updated>2019-02-17T21:57:15+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-17T21:56:59+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=b022616418ae333cd402fe1c2f6e1031b19ea79f'/>
<id>b022616418ae333cd402fe1c2f6e1031b19ea79f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>test all selectors via pytest parameterization</title>
<updated>2019-02-12T07:33:21+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-12T07:33:21+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=363c05de10dd5f93af69ed768fbface316a30be9'/>
<id>363c05de10dd5f93af69ed768fbface316a30be9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>python2 compat</title>
<updated>2019-02-05T01:53:33+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-05T01:53:33+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=78c181b13d4f3b09e1257d633b65bd81df6be59c'/>
<id>78c181b13d4f3b09e1257d633b65bd81df6be59c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>attempt to provide only healthy connections from the pool</title>
<updated>2019-02-05T01:45:27+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-05T01:44:39+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=cfa2bc9b7ea860eb4a002eaa7029ecee01e39735'/>
<id>cfa2bc9b7ea860eb4a002eaa7029ecee01e39735</id>
<content type='text'>
Adds redis.selector, a module that provides the best selector strategy
available on the current platform. A redis.selector polls a socket to
provide two pieces of functionality:

1. Check whether data can be read from the socket. Prior versions of redis-py
provided this behavior with just select.select(). select() has lots of
limitations, most notably a limit of ~1024 file descriptors. Now that
better selectors are available, this should make can_read() faster and
able to accomodate more clients. See #1115 and #486

2. Check whether a socket is ready for a command to be sent. This doubles
as a health check. It ensures that the socket is available for writing,
has no data to read and has no known errors. Anytime a socket is
disconnected or hung up, data is available to be read, typically zero bytes.

ConnectionPool.get_connection has been modified to ensure that connections
it returns are connected and are ready for a command to be sent. If
get_connection encounters a case where a socket isn't ready for a command
the connection is reconnected and checked again.

TODO: more tests for this stuff. implement EPoll and KQueue selectors.

Fixes #1115
Fixes #486
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds redis.selector, a module that provides the best selector strategy
available on the current platform. A redis.selector polls a socket to
provide two pieces of functionality:

1. Check whether data can be read from the socket. Prior versions of redis-py
provided this behavior with just select.select(). select() has lots of
limitations, most notably a limit of ~1024 file descriptors. Now that
better selectors are available, this should make can_read() faster and
able to accomodate more clients. See #1115 and #486

2. Check whether a socket is ready for a command to be sent. This doubles
as a health check. It ensures that the socket is available for writing,
has no data to read and has no known errors. Anytime a socket is
disconnected or hung up, data is available to be read, typically zero bytes.

ConnectionPool.get_connection has been modified to ensure that connections
it returns are connected and are ready for a command to be sent. If
get_connection encounters a case where a socket isn't ready for a command
the connection is reconnected and checked again.

TODO: more tests for this stuff. implement EPoll and KQueue selectors.

Fixes #1115
Fixes #486
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #1129 from Chronial/feature/fix-except</title>
<updated>2019-02-01T19:28:15+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-01T19:28:15+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=a4644592162afdfe5b8809fa28eff041f7be6993'/>
<id>a4644592162afdfe5b8809fa28eff041f7be6993</id>
<content type='text'>
Do not leave connections in invalid state</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Do not leave connections in invalid state</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #1130 from Junnplus/socket-patch</title>
<updated>2019-02-01T19:24:36+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-01T19:24:36+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=ff17e924e8037e3b528ac93654ddc6be410b0e16'/>
<id>ff17e924e8037e3b528ac93654ddc6be410b0e16</id>
<content type='text'>
Use IPPROTO_TCP constant instead of SOL_TCP constant</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use IPPROTO_TCP constant instead of SOL_TCP constant</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #1131 from Junnplus/fix-typo</title>
<updated>2019-02-01T19:23:41+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-01T19:23:41+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=6155774f3d5274734e740c33e4154b0211103be4'/>
<id>6155774f3d5274734e740c33e4154b0211103be4</id>
<content type='text'>
Fix github pull template typo</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix github pull template typo</pre>
</div>
</content>
</entry>
<entry>
<title>readd the connection destructor</title>
<updated>2019-02-01T19:04:30+00:00</updated>
<author>
<name>Andy McCurdy</name>
<email>andy@andymccurdy.com</email>
</author>
<published>2019-02-01T19:04:30+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/redis-py.git/commit/?id=e6157620edd7b136bdf1bca721d3d2b879e97f9d'/>
<id>e6157620edd7b136bdf1bca721d3d2b879e97f9d</id>
<content type='text'>
Since Connection.disconnect() now verifies that the current process owns
the connection before shutting the socket down we can safely readd
the destructor just to make sure things are really cleaned up
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since Connection.disconnect() now verifies that the current process owns
the connection before shutting the socket down we can safely readd
the destructor just to make sure things are really cleaned up
</pre>
</div>
</content>
</entry>
</feed>
