docs: m2r BUGS.md issues.rst
[awesomized/libmemcached] / docs / source / issues.rst
1
2 Bugs, Known Issues and Insufficiencies
3 ======================================
4
5 libhashkit
6 ----------
7
8 libhashkit is not usable for general purpose hashing, because it is geared to
9 usage by libmemcached.
10
11 MurMur
12 ^^^^^^
13
14 Hashkit's MurMur/MurMur3 are limited to the lower 32 bits.
15
16 crc32
17 ^^^^^
18
19 Commit "\ `More Hashing methods <https://github.com/awesomized/libmemcached/commits/1207354f>`_\ "
20 from October 2007 first released in v0.8, which main intention seems to have
21 been to add FNV1 hash algos, changed the result of the crc32 hash to only its
22 upper 16 bits sans MSB, without any additional comment.
23
24 The implementations referred to in the file header (Postgres and BSD)
25 do not exhibit this behavior.
26
27 A `bug report <https://bugs.launchpad.net/libmemcached/+bug/604178>`_ was
28 filed three years later on launchpad, which was marked ``Won't fix`` with
29 the comment that it was for compatibility with other "drivers", which
30 supposedly refers to other memcached client libraries.
31
32 libmemcached
33 ------------
34
35 Replication
36 ^^^^^^^^^^^
37
38 This is a somewhat badly named feature, because it **does not** provide
39 any of the guaranties one would expect from a proper replication.
40
41 One can set the intended number of additional servers where data should
42 be stored with the behavior ``MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS`` and
43 specify whether ``MGET``\ s/\ ``GET``\ s should read from a random server with
44 ``MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ``. ``DELETE``\ s will try to
45 delete the key from all replicas.
46
47 The binary protocol is required and any other command is unaffected.
48
49 TLS/SSL
50 ^^^^^^^
51
52 libmemcached does not support TLS/SSL, yet.
53 See `github issue #37 <https://github.com/awesomized/libmemcached/issues/37>`_.
54
55 Coroutines and event loops
56 ^^^^^^^^^^^^^^^^^^^^^^^^^^
57
58 libmemcached does not support explicit asynchronous usage, yet.
59 See `github issue #54 <https://github.com/awesomized/libmemcached/issues/54>`_.
60
61 META protocol
62 ^^^^^^^^^^^^^
63
64 libmemcached deos not support memcached's META protocol, yet.
65 See `github issue #121 <https://github.com/awesomized/libmemcached/issues/121>`_.