05:55:39 GMT hey guys, can anyone help me find what is default rdb snapshottng interval .. unable to find in documentation :| 07:01:06 GMT hmm 07:37:02 GMT :/ 08:01:46 GMT Having a problem with Redis, as reported here: https://github.com/antirez/redis/issues/4033 08:01:57 GMT If anyone has experience with this, please let me know 08:11:15 GMT vincian: https://github.com/antirez/redis/blob/unstable/redis.conf#L196-L220 08:16:42 GMT bgedik: looks like the shutdown function in redis does not force a flush of the aof buffers at all 08:17:01 GMT https://github.com/antirez/redis/blob/unstable/src/server.c#L2514-L2531 08:17:22 GMT it might be a good idea to call flushAppendOnlyFile(1) there 08:20:26 GMT badboy_: ty, I had found it but was wondering if "save 900 1 08:20:26 GMT save 300 10 08:20:32 GMT save 60 10000" 08:20:38 GMT are the default values or just examples 08:22:26 GMT defaults 08:22:38 GMT Cool, thanks 08:28:14 GMT hello. I'm having some issues with the creating the redis protocol... I am working on getting the final parts of the protocol. Namely generation of arrays of arrays. 08:28:34 GMT But my creation algorithm must be off and I'm not entirely sure why its not working. 08:28:42 GMT it looks to me like it should. 08:31:49 GMT if it doesn't you're doing something wrong ;) 08:32:17 GMT badboy_: thanks for the info mind taking a look and telling me if you see why? https://gist.github.com/edge226/ef7a87eed66a12d40c1d4ac71173bce8 08:37:49 GMT the redis server does not accept nested arrays for command input 08:38:22 GMT So what is the proper syntax for doing multiple commands as I'm attempting or is this not possible? 08:40:16 GMT just send each array 08:40:59 GMT badboy_: so the proper way would be a set and then a get seperately? 08:41:29 GMT yes. Redis only knows single commands 08:41:52 GMT it always parse a full array as a command. multiple commands are just one array after another without indication how many 08:41:53 GMT badboy_: well that makes things much easier and I wish I had known that earlier. 08:43:04 GMT badboy_: that means I've been screwing around for around 2 days on something that I had a perfect implementation for... 08:43:06 GMT should have read the protocol spec more carefully then ;) 08:43:17 GMT badboy_: yeah probably. 08:43:26 GMT https://redis.io/topics/protocol#sending-commands-to-a-redis-server 08:43:40 GMT what are you implementing the protocol for, edge226? 08:44:04 GMT minus: as in language? bash. 08:44:26 GMT forget i ever asked 08:44:58 GMT :D 08:45:04 GMT minus: LOL its going to be around 300 lines and dynamic. 08:45:05 GMT but it wasn't you doing the Zsh bindings, right? 08:46:12 GMT no not me. 08:47:06 GMT someone posted this a few days ago https://github.com/zdharma/zredis 08:47:45 GMT not me at all. that is way more complicated to use than my implimentation. 08:54:21 GMT once I clean this up a little bit I'll show it in here and you can tell me what you think. 08:55:46 GMT well no need to show it for that :D 08:56:23 GMT minus: why do you say that, You've seen or tried it. 08:56:38 GMT minus: not all bash is bad. :D 08:57:25 GMT yes, but bash talking to redis is. that's just my opinion tho 08:59:27 GMT Why do you say that though? bash can do native sockets. I've got it setup so you can setup a socket under a specific name, host, port with one function and can change the active socket with another function, Otherwise its all redis set var "var set" 09:00:03 GMT So you could easily point to different servers and just do changes with activedb pointing to different sockets. 09:05:53 GMT badboy_: anyways thanks for filling me in. Now the implementation is pretty much done. :D 10:30:34 GMT does one setup a redis server for a app, or can multiple apps be isolated to use differnt db ? 10:32:13 GMT kaos01: you can use different servers or one server while switching db. 10:32:22 GMT kaos01: depends on how you design your schema. 10:33:53 GMT ok i understand different db's exists but anyone loging into redis can access any database ? 10:34:14 GMT so its not isolated, so if isolation is required multiple redis isntances are needed ? 10:34:38 GMT kaos01, it's cheap (operation-wise) to run multiple redis servers, and it has benefits on contemporary hardware (due to Redis being single-threaded). I'd go for one server per app. 10:34:50 GMT (if you have a moderate number of apps, that is) 10:36:00 GMT thnaks just seems like a pain specially id using sentinel to setup 3 servers for a single app 10:40:05 GMT that's strictly a matter of your automation tools :) 10:40:24 GMT true 10:40:38 GMT or can/do peopel run multiple redis instances on the same server ? 10:40:51 GMT kaos01: through docker its easy. 10:41:10 GMT dunno about the sentinel stuff. 10:42:37 GMT kaos01, ad multiple instances per server: sure. just make sure you don't overcommit memory, and that your cpu usage stays in check. 10:43:22 GMT (and don't place servers which are supposed to be within different failure domains/the same cluster on the same machine, of course) 11:26:04 GMT Do you guys know any golang redis client library that supports Unix Socket connections? 12:42:53 GMT badboy_: in configuration file, if I haven't specified "save", will it still be enabled with those values ? 13:49:52 GMT vincian: no, if you don't specify save directives in the config redis won't save to disk (at least that's what the comments in the default config say) 13:59:36 GMT but it also says that enabled by default, that means its enabled in default config i believe 14:02:25 GMT but it does seem to save to dump.rdb in my case, i havent specified "save" anywhere in config 14:19:14 GMT vincian: if you do _not_ use a config _file_ it will use the defaults unless you explicitly pass --save "" 14:23:54 GMT i am using a conf file, but not specifying "save" 14:25:15 GMT i just tried: with config file (no save lines: redis-server redis.conf) and without config file (redis-server) it does not ever write a dump 14:33:05 GMT vincian: you can check the actual setting with CONFIG GET save 14:36:34 GMT oh, this is funny. if you do not specify any configuration, it'll use the default save config. if you do as much as specify a different port from cli or give it a config file it will _not_ configure saving 15:04:49 GMT config get save returns 15:04:50 GMT 1) "save" 15:04:51 GMT 2) "" 15:05:16 GMT but I can see a dump.rdb file , last modified like 2 days back 15:21:09 GMT well, it's certainly not gonna delete it 19:03:12 GMT Hey guys.. I'm at least 20 minutes trying to figure out how to access the data inside my redis keys 19:03:25 GMT anyone can pls help out? 19:08:23 GMT I'm talking about redis-cli 19:08:38 GMT KEYS * shows all my keys.. how can I see the data inside it? 19:08:49 GMT GET? 19:09:14 GMT GET ? 19:10:10 GMT GET 19:10:23 GMT well, depending on the type of key 19:13:29 GMT GET "stat:failed:2017-06-04" 19:13:30 GMT "24" 19:13:48 GMT looks like I have 24 items right? how can I see what's inside each one? 19:14:22 GMT no, that key stores the number 24 19:14:37 GMT oh.. let me check key by key 19:15:59 GMT I have actually 11 keys here 19:16:06 GMT this stupid sidekiq creates it 19:17:28 GMT how about this one: 19:17:28 GMT GET "queues" 19:17:30 GMT (error) WRONGTYPE Operation against a key holding the wrong kind of value 19:18:18 GMT TYPE to check the type 19:18:52 GMT if it's a list, LLEN to get its length and LRANGE key 0 -1 to see all entries in it 19:19:06 GMT TYPE "queues" 19:19:06 GMT set 19:19:11 GMT https://redis.io/commands/ has a list of all commands 19:19:21 GMT SMEMBERS lists set members 19:20:10 GMT SMEMBERS "queues" 19:20:12 GMT 1) "default" 19:20:17 GMT look at this 19:20:37 GMT so.. I guess now I need to list what's inside "default" which I believe it's my queue with all my data 19:20:46 GMT what are you actually trying to achieve? 19:22:04 GMT so.. this lib called Sidekiq, which I'm using with Ruby/Rails stores some data on redis.. so I'm just trying to explore it.. trying to read what's inside each queue 19:22:19 GMT just to learn how redis works 19:22:22 GMT redis keys cannot be nested 19:22:27 GMT sidekiq has an API for that 19:22:29 GMT ah 19:22:41 GMT so the default is just the string default and there's nothing behind that 19:22:46 GMT yeah.. but the free version doesn't allow me to see which jobs were proccessed 19:22:48 GMT right 19:23:10 GMT I was wondering if I connect to redis I could get some clue 19:23:17 GMT sure 19:23:40 GMT equipped with the list of all commands, minus gave you the link, you can explore it 19:23:53 GMT but I guess the sidekiq guy was smart and it might be storing just a kind of ID on redis.. and all the real data maybe is living on the disk 19:24:02 GMT should be just some key named queue:default which is a list of json encoded jobs 19:24:08 GMT no 19:24:33 GMT thee sidekiq guy was smart and sidekiq stores all necessary job data in redis 19:25:24 GMT sidekiq is not 100% FOSS? 19:25:35 GMT there's a pro version 19:25:40 GMT lame 19:25:47 GMT well, not lame 19:25:47 GMT with extended functionality 19:26:12 GMT but the oss version has the set of features most people actually need 19:26:29 GMT it's just a job queue, isn't it? 19:26:37 GMT right 19:26:40 GMT "just" 19:27:00 GMT mike found a good niche for this product and makes some good money with it :) 19:27:23 GMT Do you guys know a kind of nice free GUI Redis client for MacOS? 19:27:37 GMT I guess this would be easier to just explore what's inside redis 19:27:55 GMT I tried this Redis Desktop Manager but looks to be paid now 19:28:03 GMT oh it is? 19:28:17 GMT let me double check 19:28:48 GMT ready-to-use mac builds are paids 19:28:49 GMT -s 19:28:51 GMT i use redis-cli for basic stuff and python for anything more; it makes it quite simple to explore redis 19:28:57 GMT source is available 19:31:11 GMT 127.0.0.1:6379> lrange queues:default 0 -1 19:31:12 GMT (empty list or set) 19:31:15 GMT :/ 19:32:00 GMT you might want to try `redis-cli monitor` and watch what's happening when it processes a job 19:32:24 GMT oh nice it's a kind of sniffer 19:32:27 GMT let me try that 19:33:06 GMT that's awesome 19:33:55 GMT "lpush" "queue:default" "{\"class\":\"TodoWorker\",\"args\":[{\"description\":\"testando bla bla bla\",\"status\":\"0\"}],\"retry\":true,\"queue\":\"default\",\"jid\":\"361313472110bbf21302374d\",\"created_at\":1496604778.248692,\"enqueued_at\":1496604778.249396}" 19:34:11 GMT I could see the thing going inside the queue 19:34:19 GMT and then "exec" 19:34:58 GMT so.. looks like Sidekiq only stores the job 19:35:15 GMT but statistics of what failed or what was proccessed should be living on the disk 19:35:19 GMT inside Ruby/Rails folder 19:35:23 GMT no 19:35:32 GMT sidekiq stores all information in Redis 19:36:15 GMT but this redis-cli monitor should show after that exec the data going to a kind of area where it stores wherever whas proccessed no? 19:36:50 GMT wtf nvm 19:36:50 GMT zrange sidekiq:failed 0 1 19:36:58 GMT my sidekiq is not running 19:37:01 GMT that's why 19:37:02 GMT let me start 19:37:03 GMT lol 19:37:06 GMT workers are BLPOPing elements 19:37:17 GMT and communicate the status back to the redis 19:37:27 GMT hummm I see... 19:37:58 GMT this monitor is awesome it shows all commands 19:38:00 GMT :D 19:41:56 GMT GET stat:processed 19:41:56 GMT "29" 19:42:24 GMT increased by one after started the sidekiq 19:43:33 GMT I see this sadd processes 19:43:36 GMT then hmset 19:49:12 GMT I think I'm happy with what I learned for now 19:49:16 GMT thanks guys!!