From 28d28ef3cf0fbbc1cf1caf379ed3ae2af0ac6c27 Mon Sep 17 00:00:00 2001
From: antirez <antirez@gmail.com>
Date: Sun, 25 Mar 2018 11:43:24 +0200
Subject: [PATCH] AOF: enable RDB-preamble rewriting by default.

There are too many advantages in doing this, RDB is faster to persist,
more compact, much faster to load back. The main issues here are that
the code is less tested because this was not the old default (so we are
enabling it for the new 5.0 release), and that the AOF is no longer a
trivially parsable format from now on. However the non-preamble mode
will be supported in the future as well, if new data types will be
added.
---
 redis.conf   | 5 +----
 src/server.h | 2 +-
 2 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/redis.conf b/redis.conf
index 12eace52..f5b7d5fe 100644
--- a/redis.conf
+++ b/redis.conf
@@ -778,10 +778,7 @@ aof-load-truncated yes
 # When loading Redis recognizes that the AOF file starts with the "REDIS"
 # string and loads the prefixed RDB file, and continues loading the AOF
 # tail.
-#
-# This is currently turned off by default in order to avoid the surprise
-# of a format change, but will at some point be used as the default.
-aof-use-rdb-preamble no
+aof-use-rdb-preamble yes
 
 ################################ LUA SCRIPTING  ###############################
 
diff --git a/src/server.h b/src/server.h
index 023839e3..15593753 100644
--- a/src/server.h
+++ b/src/server.h
@@ -139,7 +139,7 @@ typedef long long mstime_t; /* millisecond time type. */
 #define CONFIG_DEFAULT_AOF_FILENAME "appendonly.aof"
 #define CONFIG_DEFAULT_AOF_NO_FSYNC_ON_REWRITE 0
 #define CONFIG_DEFAULT_AOF_LOAD_TRUNCATED 1
-#define CONFIG_DEFAULT_AOF_USE_RDB_PREAMBLE 0
+#define CONFIG_DEFAULT_AOF_USE_RDB_PREAMBLE 1
 #define CONFIG_DEFAULT_ACTIVE_REHASHING 1
 #define CONFIG_DEFAULT_AOF_REWRITE_INCREMENTAL_FSYNC 1
 #define CONFIG_DEFAULT_MIN_SLAVES_TO_WRITE 0