Accepting request 405637 from home:rmaliska:branches:server:database

- Update to 3.2.1
* [FIX] Cleaned up spec file.
* [FIX] Critical bug in Sentinel was hopefully fixed.
* [FIX] BITFIELD bugs fixed.
* [FIX] GEO commands fixes on syntax errors and edge cases.
* [NEW] RESOTRE now accepts dumps generated by older Redis versions.
* [NEW] Jemalloc now is configured to save you memory, for a problem a
        change in the jemalloc configuration did not really survived when the
        3.2.0 release was finalized.
* [NEW] TTL and TYPE command no longer alter the last access time of a key, for
        LRU evictions purposes. A new TOUCH command was introduced *just* to
        update the access time of a key.
* [FIX] A bug was fixed in redis-cli, that connected to the instance running on the
        port 6379 if there was one, regardless of what was specified.
* [NEW] TCP keep alive is now enabled by default. This should fix most ghost
        connections problems without resulting in any practical change in otherwise
        sane deployments.
* [FIX] A Sentinel crash that could happen during failovers was fixed.
* [NEW] avg_ttl reporting in INFO improved.
* [NEW] Sentinel: improve handling of known Sentinel instances.
* [NEW] Redis Cluster address update (via gossip section) processing improved
        to avoid initiating inwanted handshakes.
* [FIX] Critical bug fixed: There was a problem in the way a cluster instance 
        loaded the AOF that could cause data written via scripts to be lost during 
        reshardings.
* [NEW] There is a new very powerful BITFIELD command. Check the documentation
        here: http://redis.io/commands/BITFIELD
* [NEW] CONFIG GET is allowed during the loading of the dataset.
* [NEW] The DEBUG command have new features and can show an help with DEBUG HELP.
* [NEW] redis-cli show hits about the commands arguments to the right.

OBS-URL: https://build.opensuse.org/request/show/405637
OBS-URL: https://build.opensuse.org/package/show/server:database/redis?expand=0&rev=78
This commit is contained in:
Martin Pluskal 2016-06-30 10:52:49 +00:00 committed by Git OBS Bridge
parent 7a8de390a8
commit 605131e7fe
6 changed files with 97 additions and 46 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b2a791c4ea3bb7268795c45c6321ea5abcc24457178373e6a6e3be6372737f23
size 1375200

3
redis-3.2.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:df7bfb7b527d99981eba3912ae22703764eb19adda1357818188b22fdd09d5c9
size 1534696

View File

@ -2,29 +2,34 @@ Index: redis.conf
=================================================================== ===================================================================
--- redis.conf.orig --- redis.conf.orig
+++ redis.conf +++ redis.conf
@@ -34,11 +34,11 @@ @@ -125,7 +125,7 @@ tcp-keepalive 300
# By default Redis does not run as a daemon. Use 'yes' if you need it. # By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized. # Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no -daemonize no
+daemonize yes +daemonize yes
# When running daemonized, Redis writes a pid file in /var/run/redis.pid by # If you run Redis from upstart or systemd, Redis can interact with your
# default. You can specify a custom pid file location here. # supervision tree. Options:
-pidfile /var/run/redis.pid @@ -136,7 +136,7 @@ daemonize no
# UPSTART_JOB or NOTIFY_SOCKET environment variables
# Note: these supervision methods only signal "process is ready."
# They do not enable continuous liveness pings back to your supervisor.
-supervised no
+supervised systemd
# If a pid file is specified, Redis writes it where specified at startup
# and removes it at exit.
@@ -147,7 +147,7 @@ supervised no
#
# Creating a pid file is best effort: if Redis is not able to create it
# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
+pidfile /var/run/redis/default.pid +pidfile /var/run/redis/default.pid
# Accept connections on the specified port, default is 6379. # Specify the server verbosity level.
# If port 0 is specified Redis will not listen on a TCP socket. # This can be one of:
@@ -62,6 +62,7 @@ tcp-backlog 511 @@ -160,7 +160,8 @@ loglevel notice
#
# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1
+bind 127.0.0.1
# Specify the path for the Unix socket that will be used to listen for
# incoming connections. There is no default, so Redis will not listen
@@ -100,7 +101,8 @@ loglevel notice
# Specify the log file name. Also the empty string can be used to force # Specify the log file name. Also the empty string can be used to force
# Redis to log on the standard output. Note that if you use standard # Redis to log on the standard output. Note that if you use standard
# output for logging but daemonize, logs will be sent to /dev/null # output for logging but daemonize, logs will be sent to /dev/null
@ -34,7 +39,7 @@ Index: redis.conf
# To enable logging to the system logger, just set 'syslog-enabled' to yes, # To enable logging to the system logger, just set 'syslog-enabled' to yes,
# and optionally update the other syslog parameters to suit your needs. # and optionally update the other syslog parameters to suit your needs.
@@ -184,7 +186,7 @@ dbfilename dump.rdb @@ -244,7 +245,7 @@ dbfilename dump.rdb
# The Append Only File will also be created inside this directory. # The Append Only File will also be created inside this directory.
# #
# Note that you must specify a directory here, not a file name. # Note that you must specify a directory here, not a file name.

View File

@ -11,5 +11,5 @@ Index: src/config.h
#endif #endif
+#endif +#endif
/* Test for polling API */ /* MSG_NOSIGNAL. */
#ifdef __linux__ #ifdef __linux__

View File

@ -1,3 +1,48 @@
-------------------------------------------------------------------
Wed Jun 29 12:14:42 UTC 2016 - rmaliska@suse.com
- Update to 3.2.1
* [FIX] Cleaned up spec file.
* [FIX] Critical bug in Sentinel was hopefully fixed.
* [FIX] BITFIELD bugs fixed.
* [FIX] GEO commands fixes on syntax errors and edge cases.
* [NEW] RESOTRE now accepts dumps generated by older Redis versions.
* [NEW] Jemalloc now is configured to save you memory, for a problem a
change in the jemalloc configuration did not really survived when the
3.2.0 release was finalized.
* [NEW] TTL and TYPE command no longer alter the last access time of a key, for
LRU evictions purposes. A new TOUCH command was introduced *just* to
update the access time of a key.
* [FIX] A bug was fixed in redis-cli, that connected to the instance running on the
port 6379 if there was one, regardless of what was specified.
* [NEW] TCP keep alive is now enabled by default. This should fix most ghost
connections problems without resulting in any practical change in otherwise
sane deployments.
* [FIX] A Sentinel crash that could happen during failovers was fixed.
* [NEW] avg_ttl reporting in INFO improved.
* [NEW] Sentinel: improve handling of known Sentinel instances.
* [NEW] Redis Cluster address update (via gossip section) processing improved
to avoid initiating inwanted handshakes.
* [FIX] Critical bug fixed: There was a problem in the way a cluster instance
loaded the AOF that could cause data written via scripts to be lost during
reshardings.
* [NEW] There is a new very powerful BITFIELD command. Check the documentation
here: http://redis.io/commands/BITFIELD
* [NEW] CONFIG GET is allowed during the loading of the dataset.
* [NEW] The DEBUG command have new features and can show an help with DEBUG HELP.
* [NEW] redis-cli show hits about the commands arguments to the right.
* [NEW] GEORADIUS got a STORE / STOREDIST option to store the result into a target
key (as as orted set) instead of reporting it to the user.
* [NEW] Redis Cluster replicas migration now works in a slightly different way. In
the past a slave could migrate only to a master that used to have slaves
in the past (and if there was still trace of this information). Now instead
if a new slave gets at least a slot, and at least one other master in the
cluster has a slave, then the new master is considered a valid target for
replica migration. So if it will be orphaned and there is a spare slave
it will get one.
* [NEW] CLUSTER SLOTS output now includes the node ID (in a backward compatible
manner).
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Apr 20 16:53:03 UTC 2016 - mamorales@suse.com Wed Apr 20 16:53:03 UTC 2016 - mamorales@suse.com

View File

@ -16,18 +16,16 @@
# #
%define _data_dir %{_localstatedir}/lib/%{name}
%define _log_dir %{_localstatedir}/log/%{name}
%define _conf_dir %{_sysconfdir}/%{name}
%if 0%{?suse_version} > 1230 %if 0%{?suse_version} > 1230
%bcond_without systemd %bcond_without systemd
%else %else
%bcond_with systemd %bcond_with systemd
%endif %endif
%define _data_dir %{_localstatedir}/lib/%{name}
%define _log_dir %{_localstatedir}/log/%{name}
%define _conf_dir %{_sysconfdir}/%{name}
Name: redis Name: redis
Version: 3.0.7 Version: 3.2.1
Release: 0 Release: 0
Summary: Persistent key-value database Summary: Persistent key-value database
License: BSD-3-Clause License: BSD-3-Clause
@ -43,18 +41,20 @@ Source5: README.SUSE
Patch0: %{name}-initscript.patch Patch0: %{name}-initscript.patch
# PATCH-MISSING-TAG -- See http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines # PATCH-MISSING-TAG -- See http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch1: %{name}-conf.patch Patch1: %{name}-conf.patch
Patch2: redis-enable-bactrace-on-x86-and-ia64-only.patch Patch2: redis-enable-bactrace-on-x86-and-ia64-only.patch
BuildRequires: pkgconfig
BuildRequires: procps BuildRequires: procps
BuildRequires: tcl BuildRequires: tcl
Requires: logrotate
Requires: sudo
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with systemd} %if %{with systemd}
BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(systemd)
%{?systemd_requires} %{?systemd_requires}
%else %else
PreReq: %{insserv_prereq} %{fillup_prereq} # FIXME: use proper Requires(pre/post/preun/...)
PreReq: %insserv_prereq %fillup_prereq
%endif %endif
Requires: logrotate
Requires: sudo
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description %description
Redis is an advanced key-value store. It is similar to memcached but the dataset Redis is an advanced key-value store. It is similar to memcached but the dataset
@ -83,8 +83,9 @@ install -m 0750 -d \
install -D -m 0755 src/redis-benchmark %{buildroot}%{_bindir}/redis-benchmark install -D -m 0755 src/redis-benchmark %{buildroot}%{_bindir}/redis-benchmark
install -m 0755 src/redis-cli %{buildroot}%{_bindir}/redis-cli install -m 0755 src/redis-cli %{buildroot}%{_bindir}/redis-cli
install -m 0755 src/redis-check-dump %{buildroot}%{_bindir}/redis-check-dump
install -m 0755 src/redis-check-aof %{buildroot}%{_bindir}/redis-check-aof install -m 0755 src/redis-check-aof %{buildroot}%{_bindir}/redis-check-aof
install -m 0755 src/redis-check-rdb %{buildroot}%{_bindir}/redis-check-rdb
install -m 0755 src/redis-trib.rb %{buildroot}%{_bindir}/redis-trib.rb
install -D -m 0755 src/redis-server %{buildroot}%{_sbindir}/redis-server install -D -m 0755 src/redis-server %{buildroot}%{_sbindir}/redis-server
ln -sfv redis-server %{buildroot}%{_sbindir}/redis-sentinel ln -sfv redis-server %{buildroot}%{_sbindir}/redis-sentinel
@ -98,11 +99,11 @@ install -D -m 0640 sentinel.conf %{buildroot}%{_conf_dir}/sentinel.conf.e
# init # init
# #
%if %{with systemd} %if %{with systemd}
install -D -m 0644 %{S:2} %{buildroot}%{_unitdir}/redis.target install -D -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/redis.target
install -D -m 0644 %{S:3} %{buildroot}%{_unitdir}/redis@.service install -D -m 0644 %{SOURCE3} %{buildroot}%{_unitdir}/redis@.service
install -D -m 0644 %{S:4} %{buildroot}/usr/lib/tmpfiles.d/%{name}.conf install -D -m 0644 %{SOURCE4} %{buildroot}%{_prefix}/lib/tmpfiles.d/%{name}.conf
%{__ln_s} -f %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} ln -s -f %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
cp %{S:5} README.SUSE cp %{SOURCE5} README.SUSE
%else %else
install -D -m 0755 utils/redis_init_script %{buildroot}%{_sysconfdir}/init.d/redis install -D -m 0755 utils/redis_init_script %{buildroot}%{_sysconfdir}/init.d/redis
ln -s %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name} ln -s %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name}
@ -121,25 +122,25 @@ The test suite often fails to start a server, with
'child process exited abnormally' -- sometimes it works. 'child process exited abnormally' -- sometimes it works.
--------------------------------------------------- ---------------------------------------------------
EOF EOF
make test && true make %{?_smp_mflags} test && true
%endif %endif
%pre %pre
/usr/sbin/groupadd -r %{name} >/dev/null 2>&1 || : %{_sbindir}/groupadd -r %{name} >/dev/null 2>&1 || :
/usr/sbin/useradd -g %{name} -s /bin/false -r -c "User for Redis key-value store" -d %{_data_dir} %{name} >/dev/null 2>&1 || : %{_sbindir}/useradd -g %{name} -s /bin/false -r -c "User for Redis key-value store" -d %{_data_dir} %{name} >/dev/null 2>&1 || :
%if %{with systemd} %if %{with systemd}
%service_add_pre %{name}.target %service_add_pre %{name}.target
%endif %endif
%post %post
%if %{with systemd} %if %{with systemd}
systemd-tmpfiles --create /usr/lib/tmpfiles.d/%{name}.conf || true systemd-tmpfiles --create %{_prefix}/lib/tmpfiles.d/%{name}.conf || true
%service_add_post %{name}.target %service_add_post %{name}.target
echo "See /usr/share/doc/packages/redis/README.SUSE to continue" echo "See %{_docdir}/redis/README.SUSE to continue"
%else %else
echo "To start the database server, create your configuration" echo "To start the database server, create your configuration"
echo "starting from /etc/redis/default.conf.example, place it" echo "starting from %{_sysconfdir}/redis/default.conf.example, place it"
echo "in /etc/redis and do: " echo "in %{_sysconfdir}/redis and do: "
echo " sudo rcredis start; sudo chkconfig redis on" echo " sudo rcredis start; sudo chkconfig redis on"
%endif %endif
@ -160,13 +161,13 @@ echo " sudo rcredis start; sudo chkconfig redis on"
%files %files
%defattr(-,root,root,-) %defattr(-,root,root,-)
%doc 00-RELEASENOTES BUGS CONTRIBUTING COPYING README %doc 00-RELEASENOTES BUGS CONTRIBUTING COPYING README.md
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%{_bindir}/redis-* %{_bindir}/redis-*
%{_sbindir}/redis-* %{_sbindir}/redis-*
%{_sbindir}/rc%{name} %{_sbindir}/rc%{name}
%if %{with systemd} %if %{with systemd}
/usr/lib/tmpfiles.d/%{name}.conf %{_prefix}/lib/tmpfiles.d/%{name}.conf
%{_unitdir}/%{name}@.service %{_unitdir}/%{name}@.service
%{_unitdir}/%{name}.target %{_unitdir}/%{name}.target
%doc README.SUSE %doc README.SUSE