02:05:20 GMT howdy 02:27:29 GMT Thought experiment with Redis: I have a set of string that may be updated frequently. I want to do string searches on this set. 02:28:05 GMT As far as I can tell, there's no quick way to do this on sets, so my idea is to keep a sorted list of the contents of the set which is generated every so often so I can do a binary search - the search doesn't need to be totally up-to-date. 02:29:37 GMT My question about this is whether or not there's a way to do a quick and atomic set on the key holding the sorted list, so I can generate the list in the background and then swap it into the "live" key. 02:34:14 GMT Does this make any sense as a scheme? 12:24:45 GMT how can I test that redis is working properly in master slave? 12:26:12 GMT ? 12:39:23 GMT think of a piece of data 12:39:26 GMT check that the slave does not have it 12:39:28 GMT write it to the master 12:39:31 GMT check that the slave now has it 15:37:46 GMT I am starting redis but it is in listen on the tcp6 port why that? 15:37:53 GMT how can I put redis in listening on tcp4? 16:00:16 GMT configure the bind directive 18:58:05 GMT I am looking at this: http://shokunin.co/blog/2014/11/11/operational_redis.html specifically this variable tcp-backlog 18:58:14 GMT it recommends: tcp-backlog 65536 18:58:27 GMT and it says: you will need this to be higher if you have many connections 18:59:24 GMT how do I know that I have too many connections? I have 4000 connections opened right now and my tcp-backlog is still set to the default of 511 18:59:41 GMT or is there some info / metrics that will tell me that my tcp-backlog is too small? 18:59:56 GMT I am using redis 3.0.6 18:59:57 GMT it's the length of the waiting queue for connections that are incoming but have not been accepted 19:00:25 GMT but how do I measure that… basically I like to know whether my tcp-backlog is too small... 19:00:28 GMT unless you have a lot of new connections constantly it doesn't matter 19:00:36 GMT s/constantly/at once/ 19:01:14 GMT if you establish 1000 connections concurrently some of them may fail because the backlog is full 19:01:16 GMT I was looking at the source code, there's no clear indication if that is too small… I mean it gives errors if sockets are not created… is that an indication that the tcp-backlog is too small? 19:03:36 GMT I see… so I won't see errors on the server side? But on the client side, I should see some errors like 'Cannot connect to redis server'? 19:03:51 GMT yeah 19:04:24 GMT thanks 19:05:05 GMT you could try to figure out what error you'd get. simply open a tcp socket and listen on it with a backlog of 1, e.g. with python, then connect to it with netcat and just never accept the connections