> ts.create test.1m 7200
> ts.create test.30m 7200
> ts.create test.1h 7200
> ts.createrule test.1m max 1800 test.30m
> ts.createrule test.1m max 3600 test.1h
=== REDIS BUG REPORT START: Cut & paste starting from here ===
64756:M 10 May 14:57:27.805 # Redis 4.0.8 crashed by signal: 11
64756:M 10 May 14:57:27.805 # Crashed running the instruction at: 0x10a4039f2
64756:M 10 May 14:57:27.805 # Accessing address: 0x2f
64756:M 10 May 14:57:27.806 # Failed assertion: <no assertion failed> (<no file>:0)
------ STACK TRACE ------
EIP:
0 redis-tsdb-module.so 0x000000010a4039f2 series_rdb_load + 386
Backtrace:
0 redis-server 0x000000010a29fa32 logStackTrace + 110
1 redis-server 0x000000010a29fdbf sigsegvHandler + 236
2 libsystem_platform.dylib 0x00007fff631a1f5a _sigtramp + 26
3 libsystem_c.dylib 0x00007fff62f2a770 __vfprintf + 16214
4 redis-server 0x000000010a282afa rdbLoadObject + 2435
5 redis-server 0x000000010a28349e rdbLoadRio + 1358
6 redis-server 0x000000010a283692 rdbLoad + 70
7 redis-server 0x000000010a268e4a loadDataFromDisk + 292
8 redis-server 0x000000010a26979e main + 1224
9 libdyld.dylib 0x00007fff62e93015 start + 1
10 ??? 0x0000000000000002 0x0 + 2
------ INFO OUTPUT ------
# Server
redis_version:4.0.8
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:d791831611c260ce
redis_mode:standalone
os:Darwin 17.5.0 x86_64
arch_bits:64
multiplexing_api:kqueue
atomicvar_api:atomic-builtin
gcc_version:4.2.1
process_id:64756
run_id:cd77c354c689286f253611fd19420d2ccdafe71d
tcp_port:6379
uptime_in_seconds:0
uptime_in_days:0
hz:50
lru_clock:16040007
executable:redis-server
config_file:redis.conf
# Clients
connected_clients:0
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
# Memory
used_memory:971632
used_memory_human:948.86K
used_memory_rss:0
used_memory_rss_human:0B
used_memory_peak:971632
used_memory_peak_human:948.86K
used_memory_peak_perc:inf%
used_memory_overhead:955640
used_memory_startup:955536
used_memory_dataset:15992
used_memory_dataset_perc:99.35%
total_system_memory:17179869184
total_system_memory_human:16.00G
used_memory_lua:37888
used_memory_lua_human:37.00K
maxmemory:0
maxmemory_human:0B
maxmemory_policy:noeviction
mem_fragmentation_ratio:0.00
mem_allocator:libc
active_defrag_running:0
lazyfree_pending_objects:0
# Persistence
loading:1
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1525989447
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:-1
rdb_current_bgsave_time_sec:-1
rdb_last_cow_size:0
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
aof_last_cow_size:0
loading_start_time:1525989447
loading_total_bytes:214
loading_loaded_bytes:0
loading_loaded_perc:0.00
loading_eta_seconds:1
# Stats
total_connections_received:0
total_commands_processed:0
instantaneous_ops_per_sec:0
total_net_input_bytes:0
total_net_output_bytes:0
instantaneous_input_kbps:0.00
instantaneous_output_kbps:0.00
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:0
migrate_cached_sockets:0
slave_expires_tracked_keys:0
active_defrag_hits:0
active_defrag_misses:0
active_defrag_key_hits:0
active_defrag_key_misses:0
# Replication
role:master
connected_slaves:0
master_replid:4cd9caf7397c0a9c41ecac930b289bd6f72baf4e
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
# CPU
used_cpu_sys:0.01
used_cpu_user:0.01
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
# Commandstats
# Cluster
cluster_enabled:0
# Keyspace
db0:keys=1,expires=0,avg_ttl=0
------ CLIENT LIST OUTPUT ------
------ REGISTERS ------
64756:M 10 May 14:57:27.806 #
RAX:00007f9ee4c03dd0 RBX:00007ffee59a3260
RCX:0000000000000007 RDX:0000000000000001
RDI:0000000000000e10 RSI:00007f9ee4c03e00
RBP:00007ffee59a3250 RSP:00007ffee59a31b0
R8 :9e3779b97f4a7c55 R9 :0000000000000001
R10:0000000000000001 R11:00007f9ee4c00000
R12:4d20c1f9360f1000 R13:0000000000000007
R14:ffffffffffffffff R15:00007f9ee4c033c0
RIP:000000010a4039f2 EFL:0000000000010206
CS :000000000000002b FS:0000000000000000 GS:0000000000000000
64756:M 10 May 14:57:27.806 # (00007ffee59a31bf) -> 0000000000000168
64756:M 10 May 14:57:27.806 # (00007ffee59a31be) -> 0000000000000002
64756:M 10 May 14:57:27.806 # (00007ffee59a31bd) -> 00007f9ee4c03c20
64756:M 10 May 14:57:27.806 # (00007ffee59a31bc) -> 0000000000000007
64756:M 10 May 14:57:27.806 # (00007ffee59a31bb) -> 00007f9ee4c03cb0
64756:M 10 May 14:57:27.806 # (00007ffee59a31ba) -> 00000001f9c1204d
64756:M 10 May 14:57:27.806 # (00007ffee59a31b9) -> 00007f9ee4c03dc0
64756:M 10 May 14:57:27.806 # (00007ffee59a31b8) -> 0000000000000e10
64756:M 10 May 14:57:27.806 # (00007ffee59a31b7) -> 0000000000000002
64756:M 10 May 14:57:27.806 # (00007ffee59a31b6) -> 00007f9ee4c03dd0
64756:M 10 May 14:57:27.806 # (00007ffee59a31b5) -> 0000000000000008
64756:M 10 May 14:57:27.806 # (00007ffee59a31b4) -> 000000010a282eb8
64756:M 10 May 14:57:27.806 # (00007ffee59a31b3) -> 000000010a282ee4
64756:M 10 May 14:57:27.806 # (00007ffee59a31b2) -> 00007ffee59a31f0
64756:M 10 May 14:57:27.806 # (00007ffee59a31b1) -> 0000000000000008
64756:M 10 May 14:57:27.806 # (00007ffee59a31b0) -> 000000010a282eb8
------ DUMPING CODE AROUND EIP ------
Symbol: series_rdb_load (base: 0x10a403870)
Module: redis-tsdb-module.so (base 0x10a400000)
$ xxd -r -p /tmp/dump.hex /tmp/dump.bin
$ objdump --adjust-vma=0x10a403870 -D -b binary -m i386:x86-64 /tmp/dump.bin
------
64756:M 10 May 14:57:27.806 # dump of function (hexdump of 514 bytes):
554889e54881eca000000048897df08975ec837dec000f843b000000488d3536330000488d1535330000488d05ff3a0000488b00488b7df048898568ffffffb000488b8d68ffffffffd148c745f800000000e9da010000488d05c23a0000488b00488b7df0ffd0488d3db23a0000488945e0488b07488b7df0ffd0488d3d9e3a0000488945d8488b07488b7df0ffd0488945d0488b45e089c1488b45d86689c289cf0fbff2e8b6f6ffff4c8d05df390000488945c8498b00488b7df0ffd0488945b8c745b400000000486345b4483b45d00f83ca000000488d05323a0000488b00488b7df0ffd0488d3d323a0000488945a8488b07488b7df0ffd0488d3d1e3a0000488945a0488b07488b7df0ffd0488d3d2239000048894598488b07488b7db8488b75a8ffd0488d35a23a0000488945a8488b06488b7db8488b75a8ffd0488b7da8488b459889c1488b45a089c289cee8dafbffff48894590488b45c848837820000f8511000000488b4590488b4dc848894120e914000000488b4590488b4dc048894128488b4590488945c0e9000000008b45b483c0018945b4e928ffffff488d0578390000488b00488b7df0ffd04889458848c7458000000000488b4580483b45880f835e000000488d054e390000488b00488b7df0ffd0488d3d1639000089c1898d7cffffff488b07488b7df0ffd0f20f118570ffffff488b7dc88bb57c
Function at 0x10a402fd0 is NewSeries
Function at 0x10a4035a0 is NewRule
=== REDIS BUG REPORT END. Make sure to include from START to END. ===
My guess is that there’s some issue with (de)serializing multiple compaction rules on a series to/from the rdb file, but I’m still investigating.