please post at minimum full INFO output for both instances and as much
details as you can about your setup.
Cheers,
Salvatore
> --
> You received this message because you are subscribed to the Google Groups "Redis DB" group.
> To post to this group, send email to redi...@googlegroups.com.
> To unsubscribe from this group, send email to redis-db+u...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/redis-db?hl=en.
>
>
--
Salvatore 'antirez' Sanfilippo
http://invece.org
"We are what we repeatedly do. Excellence, therefore, is not an act,
but a habit." -- Aristotele
My guess is that the most probable cause here is writes against the
slave (different number of keys, also)
And I would suggest exactly the same first step inspection that is to
BGSAVE on master and load the resulting dump into a fresh instance to
check what the used memory really is.
Another thing that comes in mind is if you have some special encoding
settings (for instance number of elements per ziplist) very different
in two instances. Definitely something that could produce the effect
we are seeing but I tend to think it's a different matter.
Cheers,
Salvatore
--
Salvatore 'antirez' Sanfilippo
Just wanted to say that the keys are the same on the master and
server. I had to manually type the ssh command, and that explains the
difference in keys in the master and slave. I just ran it via pssh,
and it was exactly the same.
I confirmed the settings, and the slave is not getting any write or
read commands.
Also, the only commands I use are SET and GET.
Would the number of elements per ziplist affect these commands? The
servers should be on nearly identical configurations, minus the
replication part.
I will get back with you guys after I perform a BGSAVE and put the
dataset on a fresh server.
Thanks,
Jon
Here is the INFO command from redis running on a new server. The
binary and config file are exactly the same as the master server. The
dataset was acquired via BGSAVE via the master, as requested. As you
can see, the dataset is fairly small 60M compared to the 1.66G and
growing each second of the master.
My gut reaction is that it has something to do with having persistent
connections. I made the timeout 0 to make sure that connections would
not get reset. Anyways, let me know what you suggest next.
redis_version:2.1.7
redis_git_sha1:bbac56c2
redis_git_dirty:0
arch_bits:32
multiplexing_api:epoll
process_id:1147
uptime_in_seconds:77
uptime_in_days:0
lru_clock:1470496
used_cpu_sys:0.52
used_cpu_user:0.23
used_cpu_sys_childrens:0.00
used_cpu_user_childrens:0.00
connected_clients:1
connected_slaves:0
blocked_clients:0
used_memory:63233544
used_memory_human:60.30M
used_memory_rss:70922240
mem_fragmentation_ratio:1.12
use_tcmalloc:0
loading:0
aof_enabled:0
changes_since_last_save:0
bgsave_in_progress:0
last_save_time:1293967608
bgrewriteaof_in_progress:0
total_connections_received:1
total_commands_processed:0
expired_keys:0
keyspace_hits:0
keyspace_misses:0
hash_max_zipmap_entries:64
hash_max_zipmap_value:512
pubsub_channels:0
pubsub_patterns:0
vm_enabled:0
role:master
db0:keys=221670,expires=284
Thanks,
Jon
On Sun, Jan 2, 2011 at 7:27 PM, Salvatore Sanfilippo <ant...@gmail.com> wrote:
Another thing that can cause such a problem is a client doing
something strange like sending a MULTI, and then a lot of commands,
but never calling EXEC.
A simpler thing causing this problem is when clients don't read the
output from the server.
I'll add more information about this condition in the info output in
the 2.2 branch so that if you can upgrade we can see if that's the
case. I'll do the same also for the replication link, since when the
link is not fast enough compared to the rate at which the master
receives command this can also happen.
While the version you are using is pretty old, there are no critical
bugs I can find in the changelog after your release. To get more
information please can you retry to check with 'redis-cli monitor'
what commands are executed?
Cheers,
Salvatore
> To unsubscribe from this group, send email to redis-db+u...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/redis-db?hl=en.
>
>
--
Salvatore 'antirez' Sanfilippo
http://invece.org
"We are what we repeatedly do. Excellence, therefore, is not an act,
I wonder if you have any news about this, or if there is a way for us
to investigate this further.
We are going to release Redis 2.2 as stable, and this is the only
issue we have about it.
While we can't consider this a blocking bug as there is no clearly
identified bug, and may a matter of configuration or other problems
related to writing against the slave, I definitely want to make some
effort to track it.
To explore a few possibilities:
This kind of asymmetries are possible if you have a master -> slave
setup where you use the new maxmemory key eviction policies. With
maxmemory deletions of evicted keys are not transmitted, as in theory
you may want to have different max memory settings in the master and
slave, and since random deletion of keys can only apply to caches,
there are no consistency concerns.
But what happens If I forget to set maxmemory in one instance, master
or slave? that the memory will go higher and higher. Just an example.
I just added two new info fields in INFO output (both in 2.2 branch
and unstable) that show the max input and output buffer lengths, so we
can also check if it's a matter of a client not reading fast enough,
or a master <-> slave link that is not fast enough so more and more
data is queued on the master.
Cheers,
Salvatore
> --
> You received this message because you are subscribed to the Google Groups "Redis DB" group.
> To post to this group, send email to redi...@googlegroups.com.
> To unsubscribe from this group, send email to redis-db+u...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/redis-db?hl=en.
>
>
--
Salvatore 'antirez' Sanfilippo
open source developer - VMware