07:07:20 GMT Hi. I'm looking for advice on a 2 server hot standby setup. I'm implementing it by hand because Sentinel and Cluster don't seem to support a 2 server - and I've only got 2 CPUs . Any good example client code/doc for thIs scenario, to handle detection and switchover to standby server? Thx. 07:38:32 GMT freddo: sentinel works with 2 redises, but needs at least 3 sentinels (so at least one would have to be external) 07:39:06 GMT you can't really do failover with two servers because if the connection between them fails both think they should be master 07:42:18 GMT minus: thanks, that's what I understood, but this is an isolated system and I don't have a 3rd CPU to run sentinel on. I'm familiar with split brain problem, but I have a hardware line between the two servers to reduce probability of that occurring. 07:45:33 GMT freddo: in principle you just have to CONFIG SET SLAVEOF NO ONE on the salve when the master goes away 07:58:31 GMT minus: Thanks. Do you know if ping is a sufficiently reliable way of detecting the failure? 07:59:28 GMT assuming you're not running out of memory: yeah 08:00:02 GMT minus: great - thanks. 08:00:21 GMT and if the instance is just starting it'll return an error (LOADING Redis is loading the dataset into memory) if you're trying to read something from it 14:08:26 GMT Hi there! 14:08:47 GMT I was wondering if redis has some kind of transaction log somewhere? 14:14:14 GMT no 14:14:32 GMT what are you trying to do? 15:11:31 GMT badboy_, soemthing mysteriously went wrong on our staging server, some stuff got deleted and I thought I could maybe reproduce it 15:12:12 GMT not reproduce it but of look up some transaction logs to find out what and if somehting happened 15:12:17 GMT if you have AOF enabled, you could^^ 15:12:55 GMT badboy_, how would that work with AOF? 15:13:05 GMT for now I only have rdb 15:13:13 GMT but soon this needs to change anyways 15:13:18 GMT the AOF is an appendonly log of all write commands 15:13:22 GMT (sort of a "transaction log" 15:13:34 GMT badboy_, ok I see so all would be there yes 15:13:51 GMT unless rewritten, yes 15:13:59 GMT would be handy. we should really use that for this redis instance where we have crucial data 15:14:14 GMT rdb to AOF can be done with no problems or? 15:15:51 GMT you can actually enable both ;) 15:16:23 GMT see https://redis.io/topics/persistence 15:17:01 GMT CONFIG SET appendonly yes 15:17:02 GMT badboy_, oh thats nice so I just have to enable it 15:17:12 GMT thanks man 17:10:56 GMT I'm trying to resolve a redis connection issue. U've determined the cert is being rejected because of name validation. To correct it, I need to regenerate with either: CN changed, SAN entry for the VIP, or wildcard. 17:10:58 GMT any suggestions? 17:11:15 GMT crayon: what cert? 17:14:11 GMT it's internally generated, signed by the CA we use for the redis db 17:14:33 GMT for redis clients 17:14:39 GMT (auth) 17:33:21 GMT Redis doesn't support cert auth nor encryption though 17:53:00 GMT redis.clients.jedis.exceptions.JedisConnectionException: The connection to 'project21.zelda.io' failed ssl/tls hostname verification. 17:53:19 GMT it's not needed for "public" TLS, but is used to provide trusted TLS (through possession of the CA, which is preshared), and client certs for authorization (again, signed by CA). 18:00:37 GMT well, fix your cert then ;) 18:00:53 GMT or (DONT DO THIS AT HOME) disable hostname verification (DONT DO THIS) 18:10:58 GMT hello everyone, I've this lua script and the logs of `monitor` https://gist.github.com/alex88/4ad4f73977332d3341d05f99e71c8a9d 18:11:28 GMT as you can see the only operations done on foo are a RPUSH, LPOP and then LINDEX which is the script on line 14 18:11:52 GMT however, I see `attempt to concatenate local 'next_message' (a boolean value)` 18:11:58 GMT how can it be a boolean? 18:12:19 GMT if I first rpush and then lpop, the list should be empty right? so it should return nil 18:12:28 GMT have you tried redis-cli --ldb? 18:13:08 GMT `Options --ldb and --ldb-sync-mode require --eval.` ? 18:14:03 GMT oh ok, well, I was calling that function from our unit tests of our app, not directly via cmdline 18:14:11 GMT let me move the script and run the debugger 18:15:51 GMT yeah next_message = false 18:17:29 GMT I don't see why though 18:17:45 GMT I pushed only strings 18:19:37 GMT maybe you found a bug 18:19:53 GMT a nil response is converted to a bool, isn't it? 18:19:58 GMT > Redis Nil bulk reply and Nil multi bulk reply -> Lua false boolean type 18:20:01 GMT oh, that could be the reason 18:20:08 GMT bulk reply? 18:20:41 GMT anyway yes, redis.call("LRANGE", "bar", 0, 1000) shows {} but LINDEX is false 18:21:30 GMT bulk reply is just the Redis Protocol's name for a byte array 18:21:43 GMT ok gotcha 18:22:00 GMT I was just doing LINDEX on redis-cli and wondering what that was nil and lua was false 18:22:36 GMT as I've switched from LRANGE + next(next_message) to LINDEX and got into that, thanks a lot anyone 18:22:40 GMT why doesn't it return nil for a nil bulk reply and an empty table for nil multibulk :| 18:22:56 GMT leegacy :D 18:26:53 GMT :D 18:27:25 GMT time to make a redis.call2 18:37:58 GMT or just move to redis 4 :D 18:38:15 GMT does redis 4 fix it? 18:38:19 GMT i doubt it 18:38:23 GMT because compatibility 18:44:59 GMT I don't know, I just said that since a major version could change these things