bmerry / birdisle-py Goto Github PK
View Code? Open in Web Editor NEWPython bindings for birdisle
License: Other
Python bindings for birdisle
License: Other
Like the title states, birdisle server segfaults (thus bringing the whole parent python process down) if closed if any value stored is an integer.
The underlying issue is probably unrelated to the type of the stored data, but this is the furthest I've managed to narrow it down.
1
and '1'
(is there some type casting magic in redis/redis-py?)redis-py
and credis
(same behaviour)Almost-minimal non-working example:
#!/usr/bin/env python3
import birdisle
import redis
def main():
redis_server = birdisle.Server('port 16379\n')
redis_client = redis.Redis(port=16379)
# This is fine
redis_client.set('foo1', 'asdasd')
# This causes lotsa trouble
redis_client.set('foo2', 1)
# Uncommenting this will fix the segfault:
# redis_client.flushall()
# This segfaults
redis_server.close()
del redis_server
redis_server = birdisle.Server('port 16379\n')
print(redis_client.get('foo'))
redis_server.close()
del redis_server
if __name__ == '__main__':
main()
I'm unable to run birdisle
using the python3.6-alpine
Docker image, it tells me that it's unable to find backtrace
. This is the error I get:
File "/usr/local/lib/python3.6/site-packages/birdisle/__init__.py", line 6, in <module>
from . import _birdisle
ImportError: Error relocating /usr/local/lib/python3.6/site-packages/birdisle/.libs/libbirdisle.so.1: backtrace: symbol not found
However, it does seem to work when using the python:3.6-slim
Docker image.
Searching around the internets suggests that it's caused by Alpine not having glibc
.
The sdist needs to include the birdisle submodule, while also excluding build artefacts.
Particularly something like a profiling timer, to make sure it doesn't interrupt communications with the server.
The classmethod
.from_url()
of birdisle.redis.{Strict}Redis
is inherited directly from redis.client.{Strict}Redis
and it calls redis.connection.ConnectionPool.from_url
, which will not use birdisle.redis.LocalSocketConnection
.
Trying to to monkeypatch from_url
into birdisle.redis.RedisMixin.from_url
in your own application like this:
@classmethod
def from_url(cls, url, db=None, **kwargs):
kwargs.update(connection_class=birdisle.redis.LocalSocketConnection)
return super(birdisle.redis.RedisMixin, cls).from_url(url, db=db, **kwargs)
birdisle.redis.RedisMixin.from_url = from_url
Doesn't work because the db
parameter leaks into the LocalSocketConnection
which is not expecting it.
When using some Lua scripts via evalssh
on Birdisle, my unit test suite succeeds (i.e. my Lua scripts and Birdisle working OK), but the main script exits with this error and code 139.
LMK how I can help debug as this is quite opaque to me.
*** Error in `python3': corrupted double-linked list: 0x00007f43c80fe5c0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f43e7cbb7e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x7e7c3)[0x7f43e7cc27c3]
/lib/x86_64-linux-gnu/libc.so.6(+0x80678)[0x7f43e7cc4678]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f43e7cc853c]
/usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1(aeDeleteEventLoop+0x3d)[0x7f43cf9746cd]
/usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1(prepareForShutdown+0x262)[0x7f43cf97bc52]
/usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1(serverCron+0x727)[0x7f43cf97c3d7]
/usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1(aeProcessEvents+0x330)[0x7f43cf974d30]
/usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1(aeMain+0x2b)[0x7f43cf974f6b]
/usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1(redisMain+0x443)[0x7f43cf9806b3]
/usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1(serverThread+0x2b)[0x7f43cf971ecb]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7f43e80156ba]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7f43e7d4b41d]
======= Memory map: ========
00400000-007aa000 r-xp 00000000 08:01 395775 /usr/bin/python3.5
009a9000-009ab000 r--p 003a9000 08:01 395775 /usr/bin/python3.5
009ab000-00a42000 rw-p 003ab000 08:01 395775 /usr/bin/python3.5
00a42000-00a73000 rw-p 00000000 00:00 0
02010000-02ee1000 rw-p 00000000 00:00 0 [heap]
7f43b8000000-7f43b8113000 rw-p 00000000 00:00 0
7f43b8113000-7f43bc000000 ---p 00000000 00:00 0
7f43c0000000-7f43c0021000 rw-p 00000000 00:00 0
7f43c0021000-7f43c4000000 ---p 00000000 00:00 0
7f43c4000000-7f43c4021000 rw-p 00000000 00:00 0
7f43c4021000-7f43c8000000 ---p 00000000 00:00 0
7f43c8000000-7f43c811c000 rw-p 00000000 00:00 0
7f43c811c000-7f43cc000000 ---p 00000000 00:00 0
7f43cf3df000-7f43cf3ea000 r-xp 00000000 08:01 264158 /lib/x86_64-linux-gnu/libnss_files-2.23.so
7f43cf3ea000-7f43cf5e9000 ---p 0000b000 08:01 264158 /lib/x86_64-linux-gnu/libnss_files-2.23.so
7f43cf5e9000-7f43cf5ea000 r--p 0000a000 08:01 264158 /lib/x86_64-linux-gnu/libnss_files-2.23.so
7f43cf5ea000-7f43cf5eb000 rw-p 0000b000 08:01 264158 /lib/x86_64-linux-gnu/libnss_files-2.23.so
7f43cf5eb000-7f43cf731000 rw-p 00000000 00:00 0
7f43cf731000-7f43cf738000 r-xp 00000000 08:01 264183 /lib/x86_64-linux-gnu/librt-2.23.so
7f43cf738000-7f43cf937000 ---p 00007000 08:01 264183 /lib/x86_64-linux-gnu/librt-2.23.so
7f43cf937000-7f43cf938000 r--p 00006000 08:01 264183 /lib/x86_64-linux-gnu/librt-2.23.so
7f43cf938000-7f43cf939000 rw-p 00007000 08:01 264183 /lib/x86_64-linux-gnu/librt-2.23.so
7f43cf939000-7f43cfa67000 r-xp 00000000 08:01 673933 /usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1
7f43cfa67000-7f43cfc66000 ---p 0012e000 08:01 673933 /usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1
7f43cfc66000-7f43cfc71000 rw-p 0012d000 08:01 673933 /usr/local/lib/python3.5/dist-packages/birdisle/.libs/libbirdisle.so.1
7f43cfc71000-7f43cfc72000 rw-p 00000000 00:00 0
7f43cfc72000-7f43cfc74000 r-xp 00000000 08:01 673940 /usr/local/lib/python3.5/dist-packages/birdisle/_birdisle.abi3.so
7f43cfc74000-7f43cfe73000 ---p 00002000 08:01 673940 /usr/local/lib/python3.5/dist-packages/birdisle/_birdisle.abi3.so
7f43cfe73000-7f43cfe74000 rw-p 00001000 08:01 673940 /usr/local/lib/python3.5/dist-packages/birdisle/_birdisle.abi3.so
7f43cfe74000-7f43cff74000 rw-p 00000000 00:00 0
7f43cff74000-7f43cff7c000 r-xp 00000000 08:01 672304 /usr/local/lib/python3.5/dist-packages/.libs_cffi_backend/libffi-806b1a9d.so.6.0.4
7f43cff7c000-7f43d017c000 ---p 00008000 08:01 672304 /usr/local/lib/python3.5/dist-packages/.libs_cffi_backend/libffi-806b1a9d.so.6.0.4
7f43d017c000-7f43d017d000 rw-p 00008000 08:01 672304 /usr/local/lib/python3.5/dist-packages/.libs_cffi_backend/libffi-806b1a9d.so.6.0.4
7f43d017d000-7f43d017e000 rw-p 0000b000 08:01 672304 /usr/local/lib/python3.5/dist-packages/.libs_cffi_backend/libffi-806b1a9d.so.6.0.4
7f43d017e000-7f43d01a9000 r-xp 00000000 08:01 672447 /usr/local/lib/python3.5/dist-packages/_cffi_backend.cpython-35m-x86_64-linux-gnu.so
7f43d01a9000-7f43d03a9000 ---p 0002b000 08:01 672447 /usr/local/lib/python3.5/dist-packages/_cffi_backend.cpython-35m-x86_64-linux-gnu.so
7f43d03a9000-7f43d03af000 rw-p 0002b000 08:01 672447 /usr/local/lib/python3.5/dist-packages/_cffi_backend.cpython-35m-x86_64-linux-gnu.so
7f43d03af000-7f43d03b2000 rw-p 00000000 00:00 0
7f43d03b2000-7f43d03b6000 rw-p 000cd000 08:01 672447 /usr/local/lib/python3.5/dist-packages/_cffi_backend.cpython-35m-x86_64-linux-gnu.so
7f43d03b6000-7f43d03b8000 r-xp 00000000 08:01 676946 /usr/local/lib/python3.5/dist-packages/cryptography/hazmat/bindings/_padding.abi3.so
7f43d03b8000-7f43d05b7000 ---p 00002000 08:01 676946 /usr/local/lib/python3.5/dist-packages/cryptography/hazmat/bindings/_padding.abi3.so
7f43d05b7000-7f43d05b8000 r--p 00001000 08:01 676946 /usr/local/lib/python3.5/dist-packages/cryptography/hazmat/bindings/_padding.abi3.so
7f43d05b8000-7f43d05b9000 rw-p 00002000 08:01 676946 /usr/local/lib/python3.5/dist-packages/cryptography/hazmat/bindings/_padding.abi3.so
7f43d05b9000-7f43d07f9000 rw-p 00000000 00:00 0
7f43d07f9000-7f43d0800000 r-xp 00000000 08:01 938026 /usr/local/lib/python3.5/dist-packages/hiredis/hiredis.cpython-35m-x86_64-linux-gnu.so
7f43d0800000-7f43d09ff000 ---p 00007000 08:01 938026 /usr/local/lib/python3.5/dist-packages/hiredis/hiredis.cpython-35m-x86_64-linux-gnu.so
7f43d09ff000-7f43d0a00000 rw-p 00006000 08:01 938026 /usr/local/lib/python3.5/dist-packages/hiredis/hiredis.cpython-35m-x86_64-linux-gnu.so
7f43d0a00000-7f43d0a40000 rw-p 00000000 00:00 0
7f43d0a40000-7f43d0a49000 r-xp 00000000 08:01 672306 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libcrypt-2-32337c3b.5.so
7f43d0a49000-7f43d0a4c000 ---p 00009000 08:01 672306 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libcrypt-2-32337c3b.5.so
7f43d0a4c000-7f43d0a4d000 rw-p 0000c000 08:01 672306 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libcrypt-2-32337c3b.5.so
7f43d0a4d000-7f43d0c48000 ---p 0000d000 08:01 672306 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libcrypt-2-32337c3b.5.so
7f43d0c48000-7f43d0c49000 r--p 00008000 08:01 672306 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libcrypt-2-32337c3b.5.so
7f43d0c49000-7f43d0c4a000 rw-p 00009000 08:01 672306 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libcrypt-2-32337c3b.5.so
7f43d0c4a000-7f43d0c78000 rw-p 00000000 00:00 0
7f43d0c78000-7f43d0c8f000 r-xp 00000000 08:01 264181 /lib/x86_64-linux-gnu/libresolv-2.23.so
7f43d0c8f000-7f43d0e8f000 ---p 00017000 08:01 264181 /lib/x86_64-linux-gnu/libresolv-2.23.so
7f43d0e8f000-7f43d0e90000 r--p 00017000 08:01 264181 /lib/x86_64-linux-gnu/libresolv-2.23.so
7f43d0e90000-7f43d0e91000 rw-p 00018000 08:01 264181 /lib/x86_64-linux-gnu/libresolv-2.23.so
7f43d0e91000-7f43d0e93000 rw-p 00000000 00:00 0
7f43d0e93000-7f43d0ea9000 r-xp 00000000 08:01 264130 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f43d0ea9000-7f43d10a8000 ---p 00016000 08:01 264130 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f43d10a8000-7f43d10a9000 rw-p 00015000 08:01 264130 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f43d10a9000-7f43d121b000 r-xp 00000000 08:01 265012 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
7f43d121b000-7f43d141b000 ---p 00172000 08:01 265012 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
7f43d141b000-7f43d1425000 r--p 00172000 08:01 265012 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
7f43d1425000-7f43d1427000 rw-p 0017c000 08:01 265012 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
7f43d1427000-7f43d142b000 rw-p 00000000 00:00 0
7f43d142b000-7f43d1443000 r-xp 00000000 08:01 672308 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libsasl2-e96a0dbf.so.2.0.22
7f43d1443000-7f43d1643000 ---p 00018000 08:01 672308 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libsasl2-e96a0dbf.so.2.0.22
7f43d1643000-7f43d1644000 rw-p 00018000 08:01 672308 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libsasl2-e96a0dbf.so.2.0.22
7f43d1644000-7f43d1647000 rw-p 0001a000 08:01 672308 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libsasl2-e96a0dbf.so.2.0.22
7f43d1647000-7f43d165b000 r-xp 00000000 08:01 672309 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libz-a147dcb0.so.1.2.3
7f43d165b000-7f43d185a000 ---p 00014000 08:01 672309 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libz-a147dcb0.so.1.2.3
7f43d185a000-7f43d185b000 rw-p 00013000 08:01 672309 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libz-a147dcb0.so.1.2.3
7f43d185b000-7f43d185c000 rw-p 00015000 08:01 672309 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libz-a147dcb0.so.1.2.3
7f43d185c000-7f43d188c000 r-xp 00000000 08:01 672307 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libmemcached-7d8ac851.so.11.0.0
7f43d188c000-7f43d1a8b000 ---p 00030000 08:01 672307 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libmemcached-7d8ac851.so.11.0.0
7f43d1a8b000-7f43d1a8c000 rw-p 0002f000 08:01 672307 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libmemcached-7d8ac851.so.11.0.0
7f43d1a8c000-7f43d1a90000 rw-p 00163000 08:01 672307 /usr/local/lib/python3.5/dist-packages/.libs_pylibmc/libmemcached-7d8ac851.so.11.0.0
7f43d1a90000-7f43d1a9d000 r-xp 00000000 08:01 672449 /usr/local/lib/python3.5/dist-packages/_pylibmc.cpython-35m-x86_64-linux-gnu.so
7f43d1a9d000-7f43d1c9c000 ---p 0000d000 08:01 672449 /usr/local/lib/python3.5/dist-packages/_pylibmc.cpython-35m-x86_64-linux-gnu.so
7f43d1c9c000-7f43d1c9e000 rw-p 0000c000 08:01 672449 /usr/local/lib/python3.5/dist-packages/_pylibmc.cpython-35m-x86_64-linux-gnu.so
7f43d1c9e000-7f43d1ca2000 rw-p 0003b000 08:01 672449 /usr/local/lib/python3.5/dist-packages/_pylibmc.cpython-35m-x86_64-linux-gnu.so
7f43d1ca2000-7f43d1e62000 rw-p 00000000 00:00 0
7f43d1e62000-7f43d1e87000 r-xp 00000000 08:01 264198 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f43d1e87000-7f43d2086000 ---p 00025000 08:01 264198 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f43d2086000-7f43d208a000 r--p 00024000 08:01 264198 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f43d208a000-7f43d208b000 rw-p 00028000 08:01 264198 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f43d208b000-7f43d20b8000 r-xp 00000000 08:01 264151 /lib/x86_64-linux-gnu/libncursesw.so.5.9
7f43d20b8000-7f43d22b8000 ---p 0002d000 08:01 264151 /lib/x86_64-linux-gnu/libncursesw.so.5.9
7f43d22b8000-7f43d22b9000 r--p 0002d000 08:01 264151 /lib/x86_64-linux-gnu/libncursesw.so.5.9
7f43d22b9000-7f43d22ba000 rw-p 0002e000 08:01 264151 /lib/x86_64-linux-gnu/libncursesw.so.5.9
7f43d22ba000-7f43d22d0000 r-xp 00000000 08:01 524052 /usr/lib/python3.5/lib-dynload/_curses.cpython-35m-x86_64-linux-gnu.so
7f43d22d0000-7f43d24d0000 ---p 00016000 08:01 524052 /usr/lib/python3.5/lib-dynload/_curses.cpython-35m-x86_64-linux-gnu.so
7f43d24d0000-7f43d24d1000 r--p 00016000 08:01 524052 /usr/lib/python3.5/lib-dynload/_curses.cpython-35m-x86_64-linux-gnu.so
7f43d24d1000-7f43d24d3000 rw-p 00017000 08:01 524052 /usr/lib/python3.5/lib-dynload/_curses.cpython-35m-x86_64-linux-gnu.so
7f43d24d3000-7f43d2593000 rw-p 00000000 00:00 0
7f43d2593000-7f43d25a4000 r-xp 00000000 08:01 524057 /usr/lib/python3.5/lib-dynload/_json.cpython-35m-x86_64-linux-gnu.so
7f43d25a4000-7f43d27a3000 ---p 00011000 08:01 524057 /usr/lib/python3.5/lib-dynload/_json.cpython-35m-x86_64-linux-gnu.so
7f43d27a3000-7f43d27a4000 r--p 00010000 08:01 524057 /usr/lib/python3.5/lib-dynload/_json.cpython-35m-x86_64-linux-gnu.so
7f43d27a4000-7f43d27a5000 rw-p 00011000 08:01 524057 /usr/lib/python3.5/lib-dynload/_json.cpython-35m-x86_64-linux-gnu.so
7f43d27a5000-7f43d27e5000 rw-p 00000000 00:00 0
7f43d27e5000-7f43d2843000 r-xp 00000000 08:01 395629 /lib/x86_64-linux-gnu/libssl.so.1.0.0
7f43d2843000-7f43d2a43000 ---p 0005e000 08:01 395629 /lib/x86_64-linux-gnu/libssl.so.1.0.0
7f43d2a43000-7f43d2a47000 r--p 0005e000 08:01 395629 /lib/x86_64-linux-gnu/libssl.so.1.0.0
7f43d2a47000-7f43d2a4e000 rw-p 00062000 08:01 395629 /lib/x86_64-linux-gnu/libssl.so.1.0.0
7f43d2a4e000-7f43d2a65000 r-xp 00000000 08:01 524064 /usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so
7f43d2a65000-7f43d2c65000 ---p 00017000 08:01 524064 /usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so
7f43d2c65000-7f43d2c66000 r--p 00017000 08:01 524064 /usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so
7f43d2c66000-7f43d2c6b000 rw-p 00018000 08:01 524064 /usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so
7f43d2c6b000-7f43d30ab000 rw-p 00000000 00:00 0
7f43d30ab000-7f43d315d000 r-xp 00000000 08:01 656414 /usr/local/lib/python3.5/dist-packages/numpy/random/mtrand.cpython-35m-x86_64-linux-gnu.so
7f43d315d000-7f43d335c000 ---p 000b2000 08:01 656414 /usr/local/lib/python3.5/dist-packages/numpy/random/mtrand.cpython-35m-x86_64-linux-gnu.so
7f43d335c000-7f43d3381000 rw-p 000b1000 08:01 656414 /usr/local/lib/python3.5/dist-packages/numpy/random/mtrand.cpython-35m-x86_64-linux-gnu.so
7f43d3381000-7f43d33c3000 rw-p 00000000 00:00 0
7f43d33c3000-7f43d33cc000 r-xp 00000000 08:01 656147 /usr/local/lib/python3.5/dist-packages/numpy/fft/fftpack_lite.cpython-35m-x86_64-linux-gnu.so
7f43d33cc000-7f43d35cc000 ---p 00009000 08:01 656147 /usr/local/lib/python3.5/dist-packages/numpy/fft/fftpack_lite.cpython-35m-x86_64-linux-gnu.so
7f43d35cc000-7f43d35cd000 rw-p 00009000 08:01 656147 /usr/local/lib/python3.5/dist-packages/numpy/fft/fftpack_lite.cpython-35m-x86_64-linux-gnu.so
7f43d35cd000-7f43d3604000 r-xp 00000000 08:01 524556 /usr/lib/x86_64-linux-gnu/libmpdec.so.2.4.2
7f43d3604000-7f43d3803000 ---p 00037000 08:01 524556 /usr/lib/x86_64-linux-gnu/libmpdec.so.2.4.2
7f43d3803000-7f43d3804000 r--p 00036000 08:01 524556 /usr/lib/x86_64-linux-gnu/libmpdec.so.2.4.2
7f43d3804000-7f43d3805000 rw-p 00037000 08:01 524556 /usr/lib/x86_64-linux-gnu/libmpdec.so.2.4.2
7f43d3805000-7f43d3829000 r-xp 00000000 08:01 524055 /usr/lib/python3.5/lib-dynload/_decimal.cpython-35m-x86_64-linux-gnu.so
7f43d3829000-7f43d3a28000 ---p 00024000 08:01 524055 /usr/lib/python3.5/lib-dynload/_decimal.cpython-35m-x86_64-linux-gnu.so
7f43d3a28000-7f43d3a29000 r--p 00023000 08:01 524055 /usr/lib/python3.5/lib-dynload/_decimal.cpython-35m-x86_64-linux-gnu.so
7f43d3a29000-7f43d3a32000 rw-p 00024000 08:01 524055 /usr/lib/python3.5/lib-dynload/_decimal.cpython-35m-x86_64-linux-gnu.so
7f43d3a32000-7f43d3ab2000 rw-p 00000000 00:00 0
7f43d3ab2000-7f43d3add000 r-xp 00000000 08:01 656281 /usr/local/lib/python3.5/dist-packages/numpy/linalg/_umath_linalg.cpython-35m-x86_64-linux-gnu.so
7f43d3add000-7f43d3cdc000 ---p 0002b000 08:01 656281 /usr/local/lib/python3.5/dist-packages/numpy/linalg/_umath_linalg.cpython-35m-x86_64-linux-gnu.so
7f43d3cdc000-7f43d3cde000 rw-p 0002a000 08:01 656281 /usr/local/lib/python3.5/dist-packages/numpy/linalg/_umath_linalg.cpython-35m-x86_64-linux-gnu.so
7f43d3cde000-7f43d3ce1000 rw-p 000d3000 08:01 656281 /usr/local/lib/python3.5/dist-packages/numpy/linalg/_umath_linalg.cpython-35m-x86_64-linux-gnu.so
7f43d3ce1000-7f43d3ce5000 r-xp 00000000 08:01 656283 /usr/local/lib/python3.5/dist-packages/numpy/linalg/lapack_lite.cpython-35m-x86_64-linux-gnu.so
7f43d3ce5000-7f43d3ee5000 ---p 00004000 08:01 656283 /usr/local/lib/python3.5/dist-packages/numpy/linalg/lapack_lite.cpython-35m-x86_64-linux-gnu.so
7f43d3ee5000-7f43d3ee6000 rw-p 00004000 08:01 656283 /usr/local/lib/python3.5/dist-packages/numpy/linalg/lapack_lite.cpython-35m-x86_64-linux-gnu.so
7f43d3ee6000-7f43d3ee8000 rw-p 00019000 08:01 656283 /usr/local/lib/python3.5/dist-packages/numpy/linalg/lapack_lite.cpython-35m-x86_64-linux-gnu.so
7f43d3ee9000-7f43d3fa9000 rw-p 00000000 00:00 0
7f43d3fa9000-7f43d3fc8000 r-xp 00000000 08:01 655691 /usr/local/lib/python3.5/dist-packages/numpy/core/_multiarray_tests.cpython-35m-x86_64-linux-gnu.so
7f43d3fc8000-7f43d41c7000 ---p 0001f000 08:01 655691 /usr/local/lib/python3.5/dist-packages/numpy/core/_multiarray_tests.cpython-35m-x86_64-linux-gnu.so
7f43d41c7000-7f43d41c9000 rw-p 0001e000 08:01 655691 /usr/local/lib/python3.5/dist-packages/numpy/core/_multiarray_tests.cpython-35m-x86_64-linux-gnu.so
7f43d41c9000-7f43d4289000 rw-p 00000000 00:00 0
7f43d4289000-7f43d42ab000 r-xp 00000000 08:01 524050 /usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so
7f43d42ab000-7f43d44aa000 ---p 00022000 08:01 524050 /usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so
7f43d44aa000-7f43d44ab000 r--p 00021000 08:01 524050 /usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so
7f43d44ab000-7f43d44af000 rw-p 00022000 08:01 524050 /usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so
7f43d44af000-7f43da570000 rw-p 00000000 00:00 0
7f43da570000-7f43da571000 ---p 00000000 00:00 0
7f43da571000-7f43dad71000 rw-p 00000000 00:00 0
7f43dad71000-7f43dad72000 ---p 00000000 00:00 0
7f43dad72000-7f43e1572000 rw-p 00000000 00:00 0
7f43e1572000-7f43e1573000 ---p 00000000 00:00 0
7f43e1573000-7f43e1d73000 rw-p 00000000 00:00 0
7f43e1d73000-7f43e1d74000 ---p 00000000 00:00 0
7f43e1d74000-7f43e2574000 rw-p 00000000 00:00 0
7f43e258f000-7f43e268f000 rw-p 00000000 00:00 0
7f43e268f000-7f43e2692000 r-xp 00000000 08:01 524077 /usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so
7f43e2692000-7f43e2891000 ---p 00003000 08:01 524077 /usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so
7f43e2891000-7f43e2892000 r--p 00002000 08:01 524077 /usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so
7f43e2892000-7f43e2893000 rw-p 00003000 08:01 524077 /usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so
7f43e2893000-7f43e2993000 rw-p 00000000 00:00 0
7f43e2993000-7f43e299a000 r-xp 00000000 08:01 524049 /usr/lib/python3.5/lib-dynload/_csv.cpython-35m-x86_64-linux-gnu.so
7f43e299a000-7f43e2b9a000 ---p 00007000 08:01 524049 /usr/lib/python3.5/lib-dynload/_csv.cpython-35m-x86_64-linux-gnu.so
7f43e2b9a000-7f43e2b9b000 r--p 00007000 08:01 524049 /usr/lib/python3.5/lib-dynload/_csv.cpython-35m-x86_64-linux-gnu.so
7f43e2b9b000-7f43e2b9d000 rw-p 00008000 08:01 524049 /usr/lib/python3.5/lib-dynload/_csv.cpython-35m-x86_64-linux-gnu.so
7f43e2b9d000-7f43e2ede000 rw-p 00000000 00:00 0
7f43e2ede000-7f43e2ee3000 r-xp 00000000 08:01 952718 /usr/local/lib/python3.5/dist-packages/pymongo/_cmessage.cpython-35m-x86_64-linux-gnu.so
7f43e2ee3000-7f43e30e3000 ---p 00005000 08:01 952718 /usr/local/lib/python3.5/dist-packages/pymongo/_cmessage.cpython-35m-x86_64-linux-gnu.so
7f43e30e3000-7f43e30e4000 rw-p 00005000 08:01 952718 /usr/local/lib/python3.5/dist-packages/pymongo/_cmessage.cpython-35m-x86_64-linux-gnu.so
7f43e30e4000-7f43e3164000 rw-p 00000000 00:00 0
7f43e3164000-7f43e3170000 r-xp 00000000 08:01 676238 /usr/local/lib/python3.5/dist-packages/bson/_cbson.cpython-35m-x86_64-linux-gnu.so
7f43e3170000-7f43e3370000 ---p 0000c000 08:01 676238 /usr/local/lib/python3.5/dist-packages/bson/_cbson.cpython-35m-x86_64-linux-gnu.so
7f43e3370000-7f43e3371000 rw-p 0000c000 08:01 676238 /usr/local/lib/python3.5/dist-packages/bson/_cbson.cpython-35m-x86_64-linux-gnu.so
7f43e3371000-7f43e3375000 r-xp 00000000 08:01 292528 /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f43e3375000-7f43e3574000 ---p 00004000 08:01 292528 /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f43e3574000-7f43e3575000 r--p 00003000 08:01 292528 /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f43e3575000-7f43e3576000 rw-p 00004000 08:01 292528 /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f43e3576000-7f43e3666000 r-xp 00000000 08:01 655614 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libgfortran-ed201abd.so.3.0.0
7f43e3666000-7f43e3865000 ---p 000f0000 08:01 655614 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libgfortran-ed201abd.so.3.0.0
7f43e3865000-7f43e3867000 rw-p 000ef000 08:01 655614 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libgfortran-ed201abd.so.3.0.0
7f43e3867000-7f43e3868000 rw-p 00000000 00:00 0
7f43e3868000-7f43e3870000 rw-p 000f2000 08:01 655614 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libgfortran-ed201abd.so.3.0.0
7f43e3870000-7f43e5370000 r-xp 00000000 08:01 655615 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libopenblasp-r0-382c8f3a.3.5.dev.so
7f43e5370000-7f43e5570000 ---p 01b00000 08:01 655615 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libopenblasp-r0-382c8f3a.3.5.dev.so
7f43e5570000-7f43e5589000 rw-p 01b00000 08:01 655615 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libopenblasp-r0-382c8f3a.3.5.dev.so
7f43e5589000-7f43e5594000 rw-p 00000000 00:00 0
7f43e5594000-7f43e560c000 rw-p 01beb000 08:01 655615 /usr/local/lib/python3.5/dist-packages/numpy/.libs/libopenblasp-r0-382c8f3a.3.5.dev.so
7f43e560c000-7f43e598c000 r-xp 00000000 08:01 655692 /usr/local/lib/python3.5/dist-packages/numpy/core/_multiarray_umath.cpython-35m-x86_64-linux-gnu.so
7f43e598c000-7f43e5b8b000 ---p 00380000 08:01 655692 /usr/local/lib/python3.5/dist-packages/numpy/core/_multiarray_umath.cpython-35m-x86_64-linux-gnu.so
7f43e5b8b000-7f43e5baa000 rw-p 0037f000 08:01 655692 /usr/local/lib/python3.5/dist-packages/numpy/core/_multiarray_umath.cpython-35m-x86_64-linux-gnu.so
7f43e5baa000-7f43e5bca000 rw-p 00000000 00:00 0
7f43e5bca000-7f43e5bd1000 rw-p 01329000 08:01 655692 /usr/local/lib/python3.5/dist-packages/numpy/core/_multiarray_umath.cpython-35m-x86_64-linux-gnu.so
7f43e5bd1000-7f43e5c11000 rw-p 00000000 00:00 0
7f43e5c11000-7f43e5e2c000 r-xp 00000000 08:01 395620 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f43e5e2c000-7f43e602b000 ---p 0021b000 08:01 395620 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f43e602b000-7f43e6047000 r--p 0021a000 08:01 395620 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f43e6047000-7f43e6053000 rw-p 00236000 08:01 395620 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f43e6053000-7f43e6056000 rw-p 00000000 00:00 0
7f43e6056000-7f43e605b000 r-xp 00000000 08:01 524056 /usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so
7f43e605b000-7f43e625b000 ---p 00005000 08:01 524056 /usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so
7f43e625b000-7f43e625c000 r--p 00005000 08:01 524056 /usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so
7f43e625c000-7f43e625d000 rw-p 00006000 08:01 524056 /usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so
7f43e625d000-7f43e629d000 rw-p 00000000 00:00 0
7f43e629d000-7f43e62be000 r-xp 00000000 08:01 264140 /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7f43e62be000-7f43e64bd000 ---p 00021000 08:01 264140 /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7f43e64bd000-7f43e64be000 r--p 00020000 08:01 264140 /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7f43e64be000-7f43e64bf000 rw-p 00021000 08:01 264140 /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7f43e64bf000-7f43e64c6000 r-xp 00000000 08:01 524059 /usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so
7f43e64c6000-7f43e66c5000 ---p 00007000 08:01 524059 /usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so
7f43e66c5000-7f43e66c6000 r--p 00006000 08:01 524059 /usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so
7f43e66c6000-7f43e66c8000 rw-p 00007000 08:01 524059 /usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so
7f43e66c8000-7f43e66d7000 r-xp 00000000 08:01 264108 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f43e66d7000-7f43e68d6000 ---p 0000f000 08:01 264108 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f43e68d6000-7f43e68d7000 r--p 0000e000 08:01 264108 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f43e68d7000-7f43e68d8000 rw-p 0000f000 08:01 264108 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f43e68d8000-7f43e68dc000 r-xp 00000000 08:01 524041 /usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so
7f43e68dc000-7f43e6adb000 ---p 00004000 08:01 524041 /usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so
7f43e6adb000-7f43e6adc000 r--p 00003000 08:01 524041 /usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so
7f43e6adc000-7f43e6add000 rw-p 00004000 08:01 524041 /usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so
7f43e6add000-7f43e6bdd000 rw-p 00000000 00:00 0
7f43e6bdd000-7f43e6bde000 r-xp 00000000 08:01 524062 /usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so
7f43e6bde000-7f43e6ddd000 ---p 00001000 08:01 524062 /usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so
7f43e6ddd000-7f43e6dde000 r--p 00000000 08:01 524062 /usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so
7f43e6dde000-7f43e6ddf000 rw-p 00001000 08:01 524062 /usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so
7f43e6e00000-7f43e6f80000 rw-p 00000000 00:00 0
7f43e6fb1000-7f43e70f1000 rw-p 00000000 00:00 0
7f43e70f1000-7f43e71f9000 r-xp 00000000 08:01 264141 /lib/x86_64-linux-gnu/libm-2.23.so
7f43e71f9000-7f43e73f8000 ---p 00108000 08:01 264141 /lib/x86_64-linux-gnu/libm-2.23.so
7f43e73f8000-7f43e73f9000 r--p 00107000 08:01 264141 /lib/x86_64-linux-gnu/libm-2.23.so
7f43e73f9000-7f43e73fa000 rw-p 00108000 08:01 264141 /lib/x86_64-linux-gnu/libm-2.23.so
7f43e73fa000-7f43e7413000 r-xp 00000000 08:01 264208 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f43e7413000-7f43e7612000 ---p 00019000 08:01 264208 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f43e7612000-7f43e7613000 r--p 00018000 08:01 264208 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f43e7613000-7f43e7614000 rw-p 00019000 08:01 264208 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f43e7614000-7f43e763a000 r-xp 00000000 08:01 395624 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f43e763a000-7f43e783a000 ---p 00026000 08:01 395624 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f43e783a000-7f43e783c000 r--p 00026000 08:01 395624 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f43e783c000-7f43e783d000 rw-p 00028000 08:01 395624 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f43e783d000-7f43e783f000 r-xp 00000000 08:01 264203 /lib/x86_64-linux-gnu/libutil-2.23.so
7f43e783f000-7f43e7a3e000 ---p 00002000 08:01 264203 /lib/x86_64-linux-gnu/libutil-2.23.so
7f43e7a3e000-7f43e7a3f000 r--p 00001000 08:01 264203 /lib/x86_64-linux-gnu/libutil-2.23.so
7f43e7a3f000-7f43e7a40000 rw-p 00002000 08:01 264203 /lib/x86_64-linux-gnu/libutil-2.23.so
7f43e7a40000-7f43e7a43000 r-xp 00000000 08:01 264122 /lib/x86_64-linux-gnu/libdl-2.23.so
7f43e7a43000-7f43e7c42000 ---p 00003000 08:01 264122 /lib/x86_64-linux-gnu/libdl-2.23.so
7f43e7c42000-7f43e7c43000 r--p 00002000 08:01 264122 /lib/x86_64-linux-gnu/libdl-2.23.so
7f43e7c43000-7f43e7c44000 rw-p 00003000 08:01 264122 /lib/x86_64-linux-gnu/libdl-2.23.so
7f43e7c44000-7f43e7e04000 r-xp 00000000 08:01 264109 /lib/x86_64-linux-gnu/libc-2.23.so
7f43e7e04000-7f43e8004000 ---p 001c0000 08:01 264109 /lib/x86_64-linux-gnu/libc-2.23.so
7f43e8004000-7f43e8008000 r--p 001c0000 08:01 264109 /lib/x86_64-linux-gnu/libc-2.23.so
7f43e8008000-7f43e800a000 rw-p 001c4000 08:01 264109 /lib/x86_64-linux-gnu/libc-2.23.so
7f43e800a000-7f43e800e000 rw-p 00000000 00:00 0
7f43e800e000-7f43e8026000 r-xp 00000000 08:01 264177 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f43e8026000-7f43e8225000 ---p 00018000 08:01 264177 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f43e8225000-7f43e8226000 r--p 00017000 08:01 264177 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f43e8226000-7f43e8227000 rw-p 00018000 08:01 264177 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f43e8227000-7f43e822b000 rw-p 00000000 00:00 0
7f43e822b000-7f43e8251000 r-xp 00000000 08:01 264089 /lib/x86_64-linux-gnu/ld-2.23.so
7f43e825e000-7f43e825f000 rw-p 00000000 00:00 0
7f43e825f000-7f43e8260000 rwxp 00000000 00:00 0
7f43e8260000-7f43e82a0000 rw-p 00000000 00:00 0
7f43e82a0000-7f43e82c7000 r--p 00000000 08:01 264654 /usr/lib/locale/C.UTF-8/LC_CTYPE
7f43e82c7000-7f43e82c8000 r--p 00000000 08:01 264661 /usr/lib/locale/C.UTF-8/LC_NUMERIC
7f43e82c8000-7f43e82c9000 r--p 00000000 08:01 264664 /usr/lib/locale/C.UTF-8/LC_TIME
7f43e82c9000-7f43e843b000 r--p 00000000 08:01 264653 /usr/lib/locale/C.UTF-8/LC_COLLATE
7f43e843b000-7f43e843c000 r--p 00000000 08:01 264659 /usr/lib/locale/C.UTF-8/LC_MONETARY
7f43e843c000-7f43e8442000 rw-p 00000000 00:00 0
7f43e8442000-7f43e8443000 r--p 00000000 08:01 264658 /usr/lib/locale/C.UTF-8/LC_MESSAGES/SYS_LC_MESSAGES
7f43e8443000-7f43e8444000 r--p 00000000 08:01 264662 /usr/lib/locale/C.UTF-8/LC_PAPER
7f43e8444000-7f43e8445000 r--p 00000000 08:01 264660 /usr/lib/locale/C.UTF-8/LC_NAME
7f43e8445000-7f43e8446000 r--p 00000000 08:01 264652 /usr/lib/locale/C.UTF-8/LC_ADDRESS
7f43e8446000-7f43e8447000 r--p 00000000 08:01 264663 /usr/lib/locale/C.UTF-8/LC_TELEPHONE
7f43e8447000-7f43e8448000 r--p 00000000 08:01 264656 /usr/lib/locale/C.UTF-8/LC_MEASUREMENT
7f43e8448000-7f43e844f000 r--s 00000000 08:01 264980 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
7f43e844f000-7f43e8450000 r--p 00000000 08:01 264655 /usr/lib/locale/C.UTF-8/LC_IDENTIFICATION
7f43e8450000-7f43e8451000 r--p 00025000 08:01 264089 /lib/x86_64-linux-gnu/ld-2.23.so
7f43e8451000-7f43e8452000 rw-p 00026000 08:01 264089 /lib/x86_64-linux-gnu/ld-2.23.so
7f43e8452000-7f43e8453000 rw-p 00000000 00:00 0
7ffe88647000-7ffe88668000 rw-p 00000000 00:00 0 [stack]
7ffe887f1000-7ffe887f3000 r--p 00000000 00:00 0 [vvar]
7ffe887f3000-7ffe887f5000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)
It should
singleton
keyword argument to allow creation of a new server instancee.g. BLPOP blocking until another connection pushes something.
Would be really great to be able to bundle in redis modules such as https://github.com/RedisLabsModules/redisbloom
The redis license requires the license to be included in all artifacts.
I was able to install birdisle-py using pip install birdisle
in docker containers running Linux Alpine 6.4.0 and Ubuntu 16.04. However, when trying to run the same command in MacOS Mojave 10.14.1 the building process fails giving the following output.
The only clue I was able to find was on the README from fakeredis, that points out that birdisle can only run on Linux. I am not sure, though, as I was not able to find anything about this in the birdisle or birdisle-py repository.
Is it really not supported? if so, should we state it in the README and/or documentation? And otherwise, do you have any idea what is failing?
I have encountered an issue where my library which is tested using birdisle-py cannot be tested under docker vanilla python:3.8-slim
image because it lacks build utils required to compile birdisle-py from source.
Other than that wheels just save time so even if someone had build utils along python 3.8 they would still gain from this.
Redis version 3.3 introduced a new parameter health_check_interval
that is not passed into LocalSocketConnection
. Therefore tests are failing. A quick fix that worked on our side was to add health_check_interval
to LocalSocketConnection.__init__
.
Is it possible for you to take a look at this?
Cheers
Python 3.8.1
, birdisle 0.1.3
, aioredis 1.3.1
import birdisle.aioredis
import asyncio
asyncio.run(birdisle.aioredis.create_redis_pool())
Traceback:
Traceback (most recent call last):
File "<input>", line 1, in <module>
asyncio.run(birdisle.aioredis.create_redis_pool())
File "/usr/lib/python3.8/asyncio/runners.py", line 43, in run
return loop.run_until_complete(main)
File "/usr/lib/python3.8/asyncio/base_events.py", line 612, in run_until_complete
return future.result()
File "/usr/lib/python3.8/site-packages/birdisle/aioredis.py", line 133, in create_redis_pool
pool = await create_pool(server, **kwargs)
File "/usr/lib/python3.8/site-packages/birdisle/aioredis.py", line 122, in create_pool
return await aioredis.create_pool(server, pool_cls=pool_cls, **kwargs)
File "/usr/lib/python3.8/site-packages/aioredis/pool.py", line 58, in create_pool
await pool._fill_free(override_min=False)
File "/usr/lib/python3.8/site-packages/aioredis/pool.py", line 383, in _fill_free
conn = await self._create_new_connection(self._address)
File "/usr/lib/python3.8/site-packages/birdisle/aioredis.py", line 108, in _create_new_connection
loop=self._loop)
AttributeError: 'ConnectionsPool' object has no attribute '_loop'
With Python 3.8 the explicit passing of the loop parameter has been deprecated. This is reflected in the latest version of aioredis as the ConnectionPool
class no longer has a _loop
attribute. This causes birdisle.aioredis.ConnectionsPool
to fail, because it explicitly passes the loop parameter when creating an aioredis ConnectionPool
object.
I would give solving this myself a shot, but my python coroutine knowledge is still fairly basic, and I've had trouble setting up the development environment.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.