Commit graph

9 commits

Author SHA1 Message Date
fhajny
32e9576822 Fix NetBSD support. Thanks to Mustafa Dogan! 2016-11-14 14:30:17 +00:00
fhajny
e78b1314db Update databases/redis to 3.2.1.
Upgrade urgency HIGH: Critical fix to Redis Sentinel, due to 3.2.0
regression compared to 3.0.

Hey, this is Redis 3.2.1, and this release should bring some grain of
maturity to Redis 3.2. The list of commits following this note will tell
you the details, but the main things addressed in this release are the
following:

1. A critical bug in Sentinel was hopefully fixed. During the big 3.2
   refactoring of Redis Sentinel, in order to implement connection sharing
   to make Sentinel able to scale better (few Sentinels to monitor many
   masters), a bug was introduced that mis-counted the number of pending
   commands in the Redis link. This in turn resulted into an inability to
   talk with certain Redis instances. A common result of this bug was the
   inability of Redis Sentinel to reconfigure back the old master, after
   a failover, when it is reachable again, as the slave of the new master.
   This was due to the inability to talk with the old master at all.

2. BITFIELD bugs fixed.

3. GEO commands fixes on syntax errors and edge cases.

4. RESTORE now accepts dumps generated by older Redis versions.

5. Jemalloc now is really 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.

6. 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.

7. 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.

8. 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.

9. A Sentinel crash that could happen during failovers was fixed.
2016-06-19 21:28:58 +00:00
fhajny
8393d94814 Update databases/redis to 3.2.0.
Redis 3.2 contains significant changes to the API and
implementation of Redis.

- A new set of commands for Geo indexing was added (GEOADD,
  GEORADIUS and related commands).
- The new BITFIELD command handles contiguous arrays of integers
  or counters of arbitrary bits width and offset inside strings.
- Memory optimizations to hold the same data in less memory.
- Lua scripts can now contain side effects using the new effect
  replication.
- A complete remote Lua debugger is available in order to make
  writing scripts a simpler task.

Read the release notes for the full set of changes:

https://raw.githubusercontent.com/antirez/redis/3.2/00-RELEASENOTES
2016-05-06 14:00:45 +00:00
fhajny
98c0abb137 Update databases/redis to 3.0.2.
--[ Redis 3.0.2 ] Release date: 4 Jun 2015

Upgrade urgency: HIGH for Redis because of a security issue.
                 LOW for Sentinel.

* [FIX] Critical security issue fix by Ben Murphy: http://t.co/LpGTyZmfS7
* [FIX] SMOVE reply fixed when src and dst keys are the same. (Glenn Nethercutt)
* [FIX] Lua cmsgpack lib updated to support str8 type. (Sebastian Waisbrot)

* [NEW] ZADD support for options: NX, XX, CH. See new doc at redis.io.
        (Salvatore Sanfilippo)
* [NEW] Senitnel: CKQUORUM and FLUSHCONFIG commands back ported.
        (Salvatore Sanfilippo and Bill Anderson)

--[ Redis 3.0.1 ] Release date: 5 May 2015

Upgrade urgency: LOW for Redis and Cluster, MODERATE for Sentinel.

* [FIX] Sentinel memory leak due to hiredis fixed. (Salvatore Sanfilippo)
* [FIX] Sentinel memory leak on duplicated instance. (Charsyam)
* [FIX] Redis crash on Lua reaching output buffer limits. (Yossi Gottlieb)
* [FIX] Sentinel flushes config on +slave events. (Bill Anderson)
2015-06-09 12:17:56 +00:00
fhajny
4837a9b269 Update redis to 3.0.0.
--[ Redis 3.0.0 ] Release date: 1 Apr 2015

>> What's new in Redis 3.0 compared to Redis 2.8?

* Redis Cluster: a distributed implementation of a subset of Redis.
* New "embedded string" object encoding resulting in less cache
  misses. Big speed gain under certain work loads.
* AOF child -> parent final data transmission to minimize latency due
  to "last write" during AOF rewrites.
* Much improved LRU approximation algorithm for keys eviction.
* WAIT command to block waiting for a write to be transmitted to
  the specified number of slaves.
* MIGRATE connection caching. Much faster keys migraitons.
* MIGARTE new options COPY and REPLACE.
* CLIENT PAUSE command: stop processing client requests for a
  specified amount of time.
* BITCOUNT performance improvements.
* CONFIG SET accepts memory values in different units (for example
  you can use "CONFIG SET maxmemory 1gb").
* Redis log format slightly changed reporting in each line the role
  of the instance (master/slave) or if it's a saving child log.
* INCR performance improvements.

>> Refactoring changes (no new features nor bug fixes)

* Blocking operations full refactoring (blocked.c)
* Client output buffer memory tracking refactored.

See full release notes for 3.0.0:

https://raw.githubusercontent.com/antirez/redis/3.0/00-RELEASENOTES
2015-04-13 11:33:35 +00:00
fhajny
603d2382dc Update redis to 2.8.18.
* [FIX] Linenoise updated to be more VT100 compatible. (Salvatore Sanfilippo)
* [FIX] A number of typos fixed inside comments. (Various authors)
* [FIX] redis-cli no longer quits after long timeouts. (Matt Stancliff)
* [FIX] Test framework improved to detect never terminating scripts, cleanup
        instances on crashes. (Salvatore Sanfilippo)
* [FIX] PFCOUNT can be used on slaves now. (Salvatore Sanfilippo)
* [FIX] ZSCAN no longer report very small scores as 0. (Matt Stancliff,
        Michael Grunder, Salvatore Sanfilippo)
* [FIX] Don't show the ASCII logo if syslog is enabled. Redis is now
        an Enterprise Grade product. (Salvatore Sanfilippo)

* [NEW] EXPERIMENTAL: Diskless replication, for more info check the doc at
        http://redis.io/topics/replication. (Salvatore Sanfilippo).
* [NEW] Transparent Huge Pages detection and reporting in logs and
        LATENCY DOCTOR output. (Salvatore Sanfilippo)
* [NEW] Many Lua scripting enhancements: Bitops API, cjson upgrade and tests,
        cmsgpack upgrade. (Matt Stancliff)
* [NEW] Total and instantaneous Network bandwidth tracking in INFO.
* [NEW] DEBUG POPULATE two args form implemented (old form still works).
        The second argument is the key prefix. Default is "key:" (Salvatore
        Sanfilippo)
* [NEW] Check that tcp-backlog is matched by /proc/sys/net/core/somaxconn, and
        warn about it if not. (Salvatore Sanfilippo)
2014-12-10 13:36:54 +00:00
fhajny
1377b63466 Update redis to 2.8.?
Changes:

2.8.3
* [FIX] Sentinel instance role sampling fixed, the system is now more
        reliable during failover and when reconfiguring instances with
        non matching configuration.
* [FIX] Inline requests are now handled even when terminated with just LF.
* [FIX] Replication timeout handling greatly improved, now the slave is able
        to ping the master while removing the old data from memory, and while
        loading the new RDB file. This avoid false timeouts sensed by
        masters.
* [FIX] Fixed a replication bug involving 32 bit instances and big datasets
        hard to compress that resulted into more than 2GB of RDB file sent.
* [FIX] Return error for inline requests with unbalanced quotes.
* [FIX] Publish the slave replication offset even when disconnected from the
        master if there is still a cached master instance.

2.8.2
* [FIX] Sentinel better desynchronization to avoid split-brain elections
        where no Sentinel managed to get elected.
* [FIX] Stop accepting writes on "MISCONF" error only if master, not slave.
* [FIX] Reply to PING with an error on "MISCONF" errors.

2.8.1
* [FIX] Fixed a bug in "new Sentinel" config propagation.
* [FIX] Fixed a false positive in Redis tests.

2.8.0
* [FIX] Fixed an error in rdbWriteRaw() that should have no practical impact.
* [NEW] Log the new master when SLAVEOF command is used.
* [NEW] Sentinel code synchronized with the unstable branch, the new Sentinel
        is a reimplementation that uses more reliable algorithms.

2.8.0 RC6
* [NEW] SCAN, SSCAN, HSCAN, ZSCAN commands.

2.8.0 RC5
* [FIX] redis-cli: don't crash with --bigkeys when the key no longer exist.
* [FIX] Allow AUTH / PING when disconnected from slave and serve-stale-data
        is no.
* [FIX] PSYNC: safer handling of PSYNC requests with offsets in the future.
* [FIX] Replication: Fix master timeout detection.
* [FIX] Replication: Correctly install the write handler after successful
        PSYNC.

2.8.0 RC4
* [FIX] Fixed a serious EVAL memory leak in the Lua stack.
* [FIX] Fixed server startup when no IPv6 address exists in any interface.
* [FIX] Send MISCONFIG error when BGSAVE fails because can't fork.
* [FIX] Memory efficiency with large (> a few kbytes) values improved
        considerably.
* [NEW] DEBUG SDSLEN for sds memory debugging.

2.8.0 RC3
* [FIX] Improved expired keys collection algorithm. Even under heavy load keys
        to be expired can't accumulate because of lack of CPU time.
* [FIX] Replication speed regression fixed (issue #1238).
* [FIX] Fixed an hard to trigger PSYNC bug.
* [FIX] Fixed Issue #1240, ZUNIONSTORE could lead to wrong result.
* [NEW] Add per-db average TTL information in INFO output.
* [NEW] redis-benchmark improvements.
* [NEW] dict.c API wrong usage detection.

2.8.0 RC2
* [FIX] Fixed a critical replication bug, see issue #1221.
* [NEW] The new inline protocol now accepts quoted strings like, for example
        you can now type in a telnet session: set 'foo bar' "hello world\n".

2.8.0 RC1
* [NEW] Slaves are now able to partially resynchronize with the master,
        so most of the times a full resynchronization with the RDB creation
        in the master side is not needed when the master-slave link is
        disconnected for a short amount of time.
* [NEW] Experimental IPv6 support.
* [NEW] Slaves explicitly ping masters now, a master is able to detect
        a timed out slave independently.
* [NEW] Masters can stop accepting writes if not enough slaves with a given
        maximum latency are connected.
* [NEW] Keyspace changes notifications via Pub/Sub.
* [NEW] CONFIG SET maxclients is now available.
* [NEW] Ability to bind multiple IP addresses.
* [NEW] Set process names so that you can recognize, in the "ps" command
        output, the listening port of an instance, or if it is a saving child.
* [NEW] Automatic memory check on crash.
* [NEW] CONFIG REWRITE is able to materialize the changes in the configuration
        operated using CONFIG SET into the redis.conf file.
* [NEW] More NetBSD friendly code base.
* [NEW] PUBSUB command for Pub/Sub introspection capabilities.
* [NEW] EVALSHA can now be replicated as such, without requiring to be
        expanded to a full EVAL for the replication link.
* [NEW] Better Lua scripts error reporting.
* [NEW] SDIFF performance improved.
* [FIX] A number of bugfixes.

2.6.17
* [FIX] redis-cli: fix big keys search when the key no longer exist.
* [FIX] Allow AUTH / PING when disconnected from slave with serve-stale-data
        on.
* [FIX] redis-benchmark: update help for new __rand_int__ form.
* [FIX] Fix broken rdbWriteRaw() return value check in rdb.c (harmless).
* [FIX] Log to what master a slave is going to connect to.
* [FIX] Only run the fast active expire cycle if master & enabled.
* [FIX] Fixed a replication bug involving 32 bit instances and big datasets
        hard to compress that resulted into more than 2GB of RDB file sent.
2014-01-02 17:26:19 +00:00
bsiegert
19a15bf4dc Support for MirBSD. Also, no strtold. 2014-01-01 16:08:24 +00:00
mspo
450f792ed4 Import redis from wip!
Redis is a persistent key-value database with built-in net interface
2013-06-13 17:41:34 +00:00