Redis Release Notes

레디스 서버 교육 신청 레디스 정기점검/기술지원
Redis Technical Support
레디스 엔터프라이즈 서버
Redis Enterprise Server

Redis Release Notes

Redis 4.0.9 - 2018년 3월 26일(월)       CRITICAL 필수        

Redis 4.0.8 - 2018년 2월 2일(금)       CRITICAL 필수        

Redis 4.0.7 - 2018년 1월 24일(수)       MODERATE 보통        

Redis 4.0.6 - 2017년 12월 4일(월)       CRITICAL 필수        

Redis 4.0.5 - 2017년 12월 1일(금)       CRITICAL 필수        

  • Replication PSYNC2(부분 동기화) 관련 수정, 그러나 더 많은 문제가 발견되어 바로 4.0.6으로 업그레이드 되었습니다.

Redis 4.0.4 - 2017년 11월 30일(목) 오후 6시       CRITICAL 필수        

  • Replication PSYNC2(부분 동기화) 관련 수정, 그러나 문제가 발견되어 다음 날 4.0.5으로 업그레이드 되었습니다.   같은 날에 두 번 Release되기는 처음입니다.

Redis 4.0.3 - 2017년 11월 30일(목) 오후 1시       CRITICAL 필수        

  • Replication PSYNC2(부분 동기화) 관련 수정, 그러나 문제가 발견되어 바로 4.0.4으로 업그레이드되었다.

Redis 4.0.2 - 2017년 9월 21일(목)       HIGH 높음        

  • Replication PSYNC2(부분 동기화), AOF, SLOWLOG 관련 수정

Redis 4.0.1 - 2017년 7월 24일(월)       MODERATE 보통        

  • Redis Cluster 사용자는 업그레이드하기를 권고합니다.

Redis 4.0.0 GA(General Availability) - 2017년 7월 14일(금)       CRITICAL 필수        

Redis 4.0.0-RC3(Release Candidate) - 2017년 4월 22일(토)       HIGH 높음

  • MIGRATE 시 TTL 정보(Expire time 정보)를 잃어버리는 버그 수정     » MIGRATE
  • Redis Cluster에서 노드가 살아있는지 죽었는지를 확인하는 로직이 메시지 교환을 훨씬 적게하는 방식으로 개선되었습니다.     » Heartbeat Check
  • ZipList 버그 수정     » Internal ZipList
  • Copy-on-Write 버그 수정     » Copy-on-Write 분석
  • ZADD 버그 수정     » ZADD
  • Solaris 지원 개선
  • freeMemoryIfNeeded() 개선
  • GEO 버그 수정
  • Jemalloc 안전한 버전으로 내림(downgrade)
  • redis.conf에 있는 lua-time-limit 파라미터 무시함

Redis 4.0.0-RC2(Release Candidate) - 2016년 12월 6일(화)       LOW 낮음

  • GEORADIUS 버그 수정
  • 모듈 시스템(Module System) 버그 수정

Redis 4.0.0-RC1(Release Candidate) - 2016년 12월 2일(금)     4.0의 새로운 기능들

  • 모듈 시스템(Module System): Redis 기능을 확장하고 새로운 데이터 유형을 구현할 수있는 모듈을 작성할 수 있게 되었습니다. 4.0에서 가장 크게 추가된 기능이다. 이것 때문에 버전에 4.0이 되었다.
    » 모듈 시작
  • Partial Replication (PSYNC) version 2: Failover되어 마스터가 바뀌었을 때 클론(슬레이브)들이 Full-Replication하는 것이 기존 방식이였다. 새 방식에서는 바뀐 데이터만 받는 Partial Resynchronization로 개선되었다.     » Partial Resynchronization
  • Expire된 키를 제거하는 알고리즘 개선:     » LRU(Least recently used) -> LFU (Least Frequently Used)
  • 별도 쓰레드로 키 삭제: 서버 성능 개선     » UNLINK   » FLUSHDB Async   » FLUSHALL Async
  • 혼합된 RDB-AOF 포멧: Rewrite와 로드(reload)가 빨라졌다.
  • MEMORY: 메모리 사용량을 자세히 볼 수 있는 새 명령이 추가되었다.
  • Redis Cluster NAT(Network Address Translation) / Docker 지원: 이를 위해 Redis Cluster Bus Protocol이 변경되었습니다. 그래서 3.2와 호환되지 않습니다.   redis.conf에 announce-ip/port 파라미터가 추가되었습니다.
  • 온라인 메모리 조각 모음 기능 추가: CONFIG SET activedefrag yes -> 자세한 내용은 redis.conf를 보세요.
  • SWAPDB 명령 추가: ability to completely and immediately (no latency) replace two Redis databases.
  • LPUSHX / RPUSHX 명령에 value를 여러 개 입력할 수 있도록 수정
  • INFO Persistence에 rdb, aof COW(Copy-on-Write) size 추가
  • 이전 버전보다 메모리를 좀 적게 사용합니다.
  • 3.2와 호환되지 않거나 달라져서 주의해야 할 것들
    • Redis Cluster Bus Protocol 개선으로 3.2와 호환되지 않습니다.
    • CLUSTER NODES 명령의 출력에 "@bus-port"가 추가되었습니다. 프로그램 내에서 사용한다면 관련 코드를 수정하세요.   가능하면 CLUSTER SLOTS 명령을 사용하세요.
    • 쓰기 가능한(Writable) 클론(슬레이브)는 쓰기를 하위 클론에 전파하지 않습니다.
    • RDB 파일 포멧이 변경되었습니다. 4.0은 3.2 RDB 파일을 읽을 수 있습니다.
    • INFO 출력 형식 일부가 변경되었습니다.
    • SLOWLOG: 정보에 Client name과 IP:Port 항목을 추가했습니다.
    • GEODIST, GEOPOS, GEOHASH 명령에서 존재하지 않는 키에 대한 리턴 값이 변경되었습니다.
    • 일부 로그 포멧이 변경되었습니다.

Redis 3.2.x Release Notes

Redis 3.2.11 - 2017년 9월 21일(목)       HIGH 높음        

  • 종료(Shutdown)하기 전에 AOF를 flush하도록 수정했습니다.

Redis 3.2.10 - 2017년 7월 28일(금)       MODERATE 보통        

Redis 3.2.9 - 2017년 5월 17일(월)       LOW 낮음        

  • 몇 가지 작은 버그를 수정했습니다.

Redis 3.2.8 - 2017년 2월 12일(일)       CRITICAL 필수        

  • Jemalloc 4.4.0이 특정 조건에서 데드락(Deadlock)을 발생시킬 수 있어서 이전 버전(4.0)으로 되돌렸습니다.     » 관련 글
  • MIGRATE: 소켓(socket) 오류 후 서버가 크레시(crash)되는 버그 수정     » 관련 글

Redis 3.2.7 - 2017년 1월 31일(화)       HIGH 높음        

  • Expire time이 설정된 키를 MIGRATE 했을 때 Expire time을 제거해서 Persist 키로 만드는 버그를 수정했습니다.   이 버그는 멀티 키 마이그레이션 기능 구현 시 포함되었습니다.   Redis Cluster Reshard와 관련있으므로 Redis Cluster 사용자는 업그레이드하시기 바랍니다.
  • 보안: "Cross Protocol Scripting" 공격인 'host:'와 'post' 명령(?)이 들어오면 securityWarningCommand() 이 실행되어 서버 로그에 "# Possible SECURITY ATTACK detected. It looks like somebody is sending POST or Host: commands to Redis. This is likely due t o an attacker attempting to use Cross Protocol Scripting to compromise your Redis instance. Connection aborted." 이런 메시지를 남기고 연결을 끊는 기능을 추가했습니다.     » 관련 글
  • ZipList 버그 수정: LINSERT 같이 리스트 중간에 데이터를 조작하는 명령과 관련있습니다.    
    » ZipList 내부 구조
  • Jemalloc을 4.0에서 4.4.0으로 업그레이드했습니다. 4.4.0은 메모리 사용과 회수(reclaim) 기능이 개선되었습니다.     » Jemalloc

Redis 3.2.6 - 2016년 12월 6일(화)       MODERATE 보통        

  • BITFIELD 버그 수정
  • GEORADIUS 버그 수정
  • Redis Cluster: 특정 ext4(extended file system 4)에서 발생할 수 있는 버그 수정

Redis 3.2.5 - 2016년 10월 26일(수)       LOW 낮음        

  • 이 릴리즈는 단지 컴파일 오류만 수정한 것입니다.

Redis 3.2.4 - 2016년 9월 26일(월)       CRITICAL 필수        

  • 보안 취약점을 수정했습니다.     자세한 내용은 여기를 보세요.
  • TCP 바인딩 버그 수정
  • Crash Report 개선
  • redis-trib.by: 새 클러스터 생성 후 관련 정보를 보여주도록 수정

Redis 3.2.3 - 2016년 8월 2일(화)       MODERATE 보통        

  • AOF Rewrite가 진행중인 동안 복제를 위한 bgsave가 지연되는 부분 수정
  • redis-cli history 파일 관련 보안 이슈 수정

Redis 3.2.2 - 2016년 7월 28일(목)       MODERATE 보통        

  • LSET 명령 버그 수정
  • Sentinel 이 여러 마스터를 모니터링 할 때 주소(address) 업데이트 후에 Crash 될 수 있는 버그 수정
  • GEORADIUS 버그 수정
  • 클론(슬레이브)는 slave-announce-ip, slave-announce-port를 사용해서 Docker와 NAT를 지원합니다.
  • RDB check utlity가 Redis의 일부가 되었습니다.
  • CONFIG GET 명령이 대소문자를 구분하지 않도록 수정되었습니다.

Redis 3.2.1 - 2016년 6월 17일(금)       HIGH 높음        

  • Sentinel 사용자 필수 업그레이드: Sentinel 연결 공유(connection sharing/InstanceLink) 관련 버그(old master를 인식하지 못하는) 수정   -» 이 버그는 3.2.0에서 연결 공유 기능을 추가하면서 발생했습니다. 따라서 3.0.x 는 이런 버그가 발생하지 않습니다.
  • tcp-keepalive 파라미터 default 값이 0에서 300으로 변경되었습니다. 즉 TCP keep alive가 활성화된 것입니다.
  • 키 Access time만 갱신하는 TOUCH 명령 추가, 이제 TTL, TYPE 명령은 Access time을 변경하지 않습니다.
  • CONFIG SET list-max-ziplist-size 명령에서 음수를 지정할 수 없습니다.   redis.conf파일에서는 가능합니다.
  • BITFIELD 버그 수정
  • GEORADIUS 명령 버그 수정
  • RESTORE 이전 버전에서 만들어진 dump을 읽을 수 있도록 수정
  • BITCOUNT:   start와 end 둘 다 음수이고 start > end 이면 널을 리턴하도록 수정

Redis 3.2.0 - 2016년 5월 6일(금)       HIGH 높음        

  • BITFIELD 명령 추가
  • CONFIG GET AOF나 RDB를 로딩중일 때도 CONFIG GET 명령을 실행할 수 있도록 수정했습니다.
  • DEBUG 명령에 새 기능 추가
  • redis-cli: 명령을 입력하면 옵션을 보여주는 기능이 추가되었다.
  • GEORADIUS 명령에 STORE, STOREDIST 옵션 추가
  • CLUSTER SLOTS 명령의 출력에 노드 ID를 추가했습니다.
    프로그램 내에서는 Cluster Nodes 보다 Cluster Slots API를 사용하세요. Cluster Nodes는 향후 출력 내용이 자주 변경될 수 있습니다.
  • Nanosecond 변환 오류 수정: 1 microsecond = 10000(10e3) -» 1000(1e3) nanoseconds
  • redis-cli 종료 시 Command history file을 지우지 않고 그대로 두어 다음 연결 때 사용할 수 있도록 수정했습니다.
  • redis-trib.rb 버그 수정
  • INFO commandstats 수정: GEOADD 명령을 실행하면 내부적으로 ZADD가 실행되어 commandstats 리포트에 ZADD가 표시되었던 것을 GEOADD가 표시되도록 수정했습니다.
  • Redis Cluster 개선     » 관련 글
    • 초기 상태
      Master 6001 (Slots 0-5460) -> Slave 6004
      Master 6002 (Slots 5461-10922) -> Slave 6005
      Master 6003 (Slots 10923-16383) -> Slave 6006
    • Step 1: Master 6001의 모든 슬롯을 6002로 보냄(reshard) -> 6004가 6002의 슬레이브가 됨
      Master 6001 -> No slaves
      Master 6002 (Slots 0-10922) -> Slave 6005
                                                        -> Slave 6004
      Master 6003 (Slots 10923-16383) -> Slave 6006
    • Step 2: 수정 전 6002의 슬롯을 원래대로 6001에게 보냄 -> 슬레이브 6004는 그대로 6002의 슬레이브로 남아 있음.
      Master 6001 (Slots 0-5460) -> No slaves
      Master 6002 (Slots 5461-10922) -> Slave 6005
                                                                -> Slave 6004
      Master 6003 (Slots 10923-16383) -> Slave 6006
    • Step 2: 수정 후 6002의 슬롯을 원래대로 6001에게 보냄 -> 슬레이브 6004가 6001의 슬레이브로 변경됨.
      Master 6001 (Slots 0-5460) -> Slave 6004
      Master 6002 (Slots 5461-10922) -> Slave 6005
      Master 6003 (Slots 10923-16383) -> Slave 6006
    • 만약 Step 1에서 슬레이브 6005가 다운되어 6002의 슬레이브가 6004 하나만 있는 상태이면 6002의 슬롯 일부를 6001로 보내(reshard)도 6004는 6002의 슬레이브로 남아있다.

Redis 3.2.0-RC3 - 2016년 1월 28일(목)       MODERATE 보통

  • INFO avg_ttl 개선
  • Sentinel 개선
  • Redis Cluster: Cluster Bus를 통한 address 업데이트가 개선되어 불필요한 핸드쉐이크가 발생하지 않도록 수정되었습니다.

Redis 3.2.0-RC2 - 2016년 1월 25일(월)       MODERATE 보통

  • MIGRATE: 멀키 관련 버그 수정
  • Redis Cluster 버그 수정
  • redis-trib.rb 기능 개선
  • PROTECTED-MODE: 보안 관련 기능 추가

Redis 3.2.0-RC1 - 2015년 12월 23일(수)      


Redis 3.0.x Release Notes

Redis 3.0.7 - 2016년 1월 25일(월)       MODERATE 보통        

  • 중요한 Cluster 버그를 수정했으므로 Cluster 사용자는 업그레이드하세요.
  • MIGRATE multiple keys 관련 버그 수정
  • Redis Cluster node crash 버그 수정: node->slaveof 포인터 처리 오류
  • Redis-trib rebalance weight 관련 수정
  • Redis-trib fix 명령을 지원하기 위해 CLUSTER BUMPEPOCH 명령 추가
  • 너무 깊은 중첩된 객체를 프린트할 때 Lua 디버거 crash 관련 수정
  • Redis-cli에서 SCRIPT DEBUG 명령을 사용하여 디버깅 모드로 전환할 수 있습니다.
  • PROTECTED-MODE 구현: 아직 redis.conf에 protected-mode 파라미터 추가되어 있지는 않다.

Redis 3.0.6 - 2015년 12월 18일(금)       MODERATE 보통        

  • Cluster에 중요한 개선을 했으므로 Cluster 사용자는 업그레이드하세요.
  • Lua 보안 이슈 수정
  • [FIX] Redis Cluster 복제본 이전이 수정되었습니다. 자세한 내용은 문제 # 2924를 참조하십시오.
    https://github.com/antirez/redis/issues/2924

Redis 2.8.x Release Notes


Redis 2.6.x Release Notes


Redis 2.4.x Release Notes


Redis 2.2.x Release Notes


<< Introduction Release Notes Commands >>

조회수 :

Email 답글이 올라오면 이메일로 알려드리겠습니다.

혹시 처음이세요?
레디스게이트에는 레디스에 대한 많은 정보가 있습니다.
레디스 소개, 명령어, SQL, 클라이언트, 서버, 센티널, 클러스터 등이 있습니다.
혹시 필요한 정보를 찾기 어려우시면 redisgate@gmail.com로 메일 주세요.
제가 찾아서 알려드리겠습니다.
 
close
IP를 기반으로 보여집니다.