Skip to content

Commit

Permalink
redis-android v1.0.4 (redis 4.0.8)
Browse files Browse the repository at this point in the history
  • Loading branch information
wf9a5m75 committed Feb 14, 2018
1 parent 935cd80 commit 4b63c6b
Show file tree
Hide file tree
Showing 623 changed files with 54,462 additions and 228 deletions.
6 changes: 6 additions & 0 deletions CHANGELOGS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
Redis on Android 1.0 release notes
====================================

================================================================================
Redis on Android 1.0.4 Released Feb/13/2018 15:32 PST
================================================================================

Upgrade the redis 4.0.8

================================================================================
Redis on Android 1.0.3 Released Jan/03/2018 17:10 PST
================================================================================
Expand Down
50 changes: 42 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,48 @@
# Redis on Android (server)
# RedisDB on Android (v1.0.4)

This library allows you to run a Redis DB on Android devices.
You can store data, get it, pubsub, ... etc, you can manipulate the DB like normal Redis.
## Redis version

This repository is forked from [rikiji/redis-android](https://github.com/rikiji/redis-android), because the original author [Riccardo](http://rikiji.it/2012/08/21/Redis-Android-NDK-port.html) does not work on this anymore.
But thank you for your hard work, @rikiji
Feb/13/2018 Redis 4.0.8

## Redis version
## Description

Redis is known for NoSQL database. You can run Redis database on your server.

**_This library helps you to run Redis database on Android device_**.

This library is just cross-compiled the [original redis database](https://redis.io/) for Android architectures such as ARM cpu.

You can run Redis database in background thread in your application.



## Benefit of running Redis DB on Android

There are some benefits for running Redis DB on Android.

- NoSQL database in memory

The most remarkable feature of the Redis DB is `NoSQL`.
It means you can easily store data with key, and retrieve it (just like JSON object).

- No Internet is required

`MongoDB` or `Google Firebase` are known for NoSQL hosted on their cloud servers. However they need to connect to their server through the Internet.
It is depends on your purpose, but I wanted own hosted database on Android.

- `TTL` for key

One of my favorite points of Redis DB is you are able to set `TTL (time to live)`. You can save the key-value pairs that is available only in TTL time.

- `Publish/Subscriber`

One of the reason I created this library is Redis DB has `publisher/subscriber` mechanism, like a chat room.
You can notify your message from one application, and receive the data on another applications, even on multiple devices.

- No dependencies

Jan/03/2018 Redis 4.0.6
One of the reason I gave up to use `Google Firebase` is that the library requires `Google Play Services`. But my Android does not have it (AOSP rom).
You can run Redis DB with **only this library.**

## Install

Expand All @@ -21,7 +55,7 @@ repositories {
}
dependencies {
compile 'io.wf9a5m75:redis-android:1.0.3'
compile 'io.wf9a5m75:redis-android:1.0.4'
}
```

Expand Down
2 changes: 1 addition & 1 deletion redis-android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ uploadArchives {
repositories {
mavenDeployer {
repository url: "file://${repo.absolutePath}"
pom.version = "1.0.3"
pom.version = "1.0.4"
pom.groupId = "io.wf9a5m75"
pom.artifactId = "redis-android"
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ public static void start(Context context, Bundle options) {
configs.putString("appendfsync", "everysec");
configs.putString("no-appendfsync-on-rewrite", "no");
configs.putString("auto-aof-rewrite-percentage", "100");
configs.putString("auto-aof-rewrite-min-size", "64mb");
configs.putString("auto-aof-rewrite-min-size", "5mb");
configs.putString("aof-load-truncated", "yes");
configs.putString("aof-use-rdb-preamble", "no");

Expand Down
3 changes: 2 additions & 1 deletion redis-android/src/main/jni/Application.mk
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#NDK_TOOLCHAIN_VERSION := 4.9
#APP_CFLAGS := -fexceptions -std=c11
APP_PLATFORM := android-15
APP_PLATFORM := android-16
APP_PIE := true
#APP_ABI := armeabi-v7a
1 change: 0 additions & 1 deletion redis-android/src/main/jni/redis-4.0.6/src/version.h

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,255 @@ HIGH: There is a critical bug that may affect a subset of users. Upgrade!
CRITICAL: There is a critical bug affecting MOST USERS. Upgrade ASAP.
--------------------------------------------------------------------------------

================================================================================
Redis 4.0.8 Released Fri Feb 2 11:17:40 CET 2018
================================================================================

Upgrade urgency CRITICAL ONLY for Redis Cluster users. Otherwise no reason
to upgrade at all.

Redis 4.0.8 fixes a single critical bug in the radix tree data structure
used for Redis Cluster keys slot tracking. The problem was actually fixed
10 months ago into unstable, but it was fixed in a commit related to Streams
so it was never backported (for error) into the 4.0 branch.

The problem will crash Redis Cluster instances during deletions, but it is
very hard to trigger: only when the node removed is in the edge of a memory
mapped area there are the conditions to create an issue, because otherwise
the code just accesses an out of range word in read-only way in an allocated
structure: this is almost always harmless.

The single commit in this release:

f603940f Rax updated to latest antirez/rax commit. (Salvatore Sanfilippo)

Cheers,
Salvatore

================================================================================
Redis 4.0.7 Released Wed Jan 24 11:01:40 CET 2018
================================================================================

Upgrade urgency MODERATE: Several bugs fixed, but none of critical level.

Dear Redis Users,

Redis 4.0.7 addresses a number of problems and adds a few things that are
very useful to have and was worth to backport into a patchlevel release.
Here is a list of the most important things, but you can find the full list
of commits below as usually:

* Many 32 bit overflows were addressed in order to allow to use Redis with
a very significant amount of data, memory size permitting. (zhaozhao.zz,
Oran Agra)

* MEMORY USAGE fixed for the list type. (gnuhpc)

* Allow read-only scripts in Redis Cluster. (Salvatore Sanfilippo)

* Fix AOF pipes setup in edge case. (heqin)

* AUTH option for MIGRATE. (AlexStocks, Salvatore Sanfilippo, Fabio Nicotra)

* HyperLogLogs are no longer converted from sparse to dense in order
to be merged. (Salvatore Sanfilippo)

* Fix AOF rewrite dead loop under edge cases. (heqin)

* Fix processing of large bulk strings (>= 2GB). (Oran Agra)

* Added RM_UnlinkKey in modules API. (Dvir Volk)

* Fix Redis Cluster crashes when certain commands with a variable number
of arguments are called in an improper way. (Salvatore Sanfilippo)

* Fix memory leak in lazyfree engine. (zhaozhao.zz)

* Fix many potentially successful partial synchronizations that end
doing a full SYNC, because of a bug destroying the replication
backlog on the slave. So after a failover the slave was often not able
to PSYNC with masters, and a full SYNC was triggered. The bug only
happened after 1 hour of uptime so escaped the unit tests. (Oran Agra)

* Improve anti-affinity in master/slave allocation for Redis Cluster
when the cluster is created. (Salvatore Sanfilippo)

* Improve output buffer handling for slaves, by not limiting the amount
of writes a slave could receive. (Guy Benoish)

The full list of commits follow.

Enjoy,
Salvatore

jianqingdu in commit 2b99d77a:
fix not call va_end when syncWrite() failed
1 file changed, 2 insertions(+), 2 deletions(-)

Yusaku Kaneta in commit 5f9b9e11:
Fix the firstkey, lastkey, and keystep of moduleCommand
1 file changed, 1 insertion(+), 1 deletion(-)

Mark Nunberg in commit ba2d3e8e:
redismodule.h: Check ModuleNameBusy before calling it
1 file changed, 1 insertion(+), 1 deletion(-)

antirez in commit 05c1f18d:
Fix integration test NOREPLICAS error time dependent false positive.
1 file changed, 6 insertions(+), 3 deletions(-)

antirez in commit 4acd6973:
Fix migrateCommand() access of not initialized byte.
1 file changed, 5 insertions(+), 2 deletions(-)

Guy Benoish in commit 548e4fe0:
Replication buffer fills up on high rate traffic.
1 file changed, 7 insertions(+), 2 deletions(-)

antirez in commit efa7063c:
Cluster: improve anti-affinity algo in redis-trib.rb.
1 file changed, 131 insertions(+), 1 deletion(-)

antirez in commit 48568ab6:
Remove useless comment from serverCron().
1 file changed, 2 insertions(+), 3 deletions(-)

heqin in commit 0201dea5:
fixbug for #4545 dead loop aof rewrite
1 file changed, 1 insertion(+), 1 deletion(-)

antirez in commit 926beaa3:
Hopefully more clear comment to explain the change in #4607.
1 file changed, 4 insertions(+), 3 deletions(-)

qinchao in commit 019ad3e2:
fix assert problem in ZIP_DECODE_PREVLENSIZE , see issue: https://github.com/antirez/redis/issues/4587
1 file changed, 1 insertion(+), 1 deletion(-)

Oran Agra in commit 8d9dff84:
PSYNC2 fix - promoted slave should hold on to it's backlog
1 file changed, 5 insertions(+)

zhaozhao.zz in commit fba2e169:
aof: format code and comment
1 file changed, 5 insertions(+), 5 deletions(-)

antirez in commit 7777be7b:
Put more details in the comment introduced by #4601.
1 file changed, 8 insertions(+), 3 deletions(-)

zhaozhao.zz in commit 91c1568b:
lazyfree: fix memory leak for lazyfree-lazy-server-del
1 file changed, 4 insertions(+), 3 deletions(-)

antirez in commit f9c2c1ac:
Fix getKeysUsingCommandTable() in the case of nagative arity.
1 file changed, 7 insertions(+), 5 deletions(-)

antirez in commit 61135f18:
Document new protocol options in #4568 into redis.conf.
1 file changed, 14 insertions(+)

antirez in commit e77fba4d:
proto-max-querybuf-len -> client-query-buffer-limit.
1 file changed, 4 insertions(+), 4 deletions(-)

antirez in commit 87fe813b:
New config options about protocol prefixed with "proto".
4 files changed, 13 insertions(+), 13 deletions(-)

gnuhpc in commit 2e0d2414:
Fix a typo(maybe instruction?) in crash log
1 file changed, 1 insertion(+), 1 deletion(-)

Dvir Volk in commit 9f7e214e:
Added RM_UnlinkKey - a low level analog to UNLINK command
3 files changed, 56 insertions(+)

zhaozhao.zz in commit 947077bb:
redis-benchmark: bugfix - handle zero liveclients in right way
1 file changed, 1 insertion(+), 1 deletion(-)

Oran Agra in commit ff2e628f:
Add config options for max-bulk-len and max-querybuf-len mainly to support RESTORE of large keys
4 files changed, 16 insertions(+), 1 deletion(-)

Oran Agra in commit aefa9caa:
fix processing of large bulks (above 2GB)
8 files changed, 39 insertions(+), 33 deletions(-)

heqin in commit 896cf1a9:
fixbug for #4545 dead loop aof rewrite
1 file changed, 3 insertions(+), 1 deletion(-)

antirez in commit 5abb12e0:
Hyperloglog: refresh hdr variable correctly.
1 file changed, 3 insertions(+), 1 deletion(-)

antirez in commit c39a0f7c:
Hyperloglog: Support for PFMERGE sparse encoding as target.
1 file changed, 14 insertions(+), 3 deletions(-)

antirez in commit 8a012df9:
Hyperloglog: refactoring of sparse/dense add function.
1 file changed, 38 insertions(+), 20 deletions(-)

antirez in commit 549409ff:
Test: MIGRATE AUTH test added.
1 file changed, 24 insertions(+)

antirez in commit 47717222:
Rewrite MIGRATE AUTH option.
1 file changed, 38 insertions(+), 12 deletions(-)

heqin in commit d8da89ea:
fixbug for #4538 Error opening /setting AOF rewrite IPC pipes: No such file or directory
1 file changed, 6 insertions(+), 4 deletions(-)

antirez in commit 4fcc564a:
safe_write -> aofWrite. Function commented.
1 file changed, 9 insertions(+), 2 deletions(-)

zhaozhao.zz in commit 27d9c729:
aof: cast sdslen to ssize_t
1 file changed, 1 insertion(+), 1 deletion(-)

zhaozhao.zz in commit de4fb877:
aof: fix the short write
1 file changed, 22 insertions(+), 1 deletion(-)

Tomasz Poradowski in commit 1fade3d3:
always enable command history in redis-cli
1 file changed, 2 insertions(+), 1 deletion(-)

antirez in commit 9f4d4eef:
Cluster: allow read-only EVAL/EVALSHA in slaves.
1 file changed, 2 insertions(+), 1 deletion(-)

nashe in commit 8eeceabd:
Prevent off-by-one read in stringmatchlen() (fixes #4527)
1 file changed, 1 insertion(+), 1 deletion(-)

gnuhpc in commit 733af148:
Fix memory usage list bug
1 file changed, 1 insertion(+), 1 deletion(-)

zhaozhao.zz in commit c9cb699b:
dict: fix the int problem for defrag
3 files changed, 5 insertions(+), 5 deletions(-)

zhaozhao.zz in commit b37099a1:
dict: fix the int problem
1 file changed, 9 insertions(+), 9 deletions(-)

zhaozhao.zz in commit 8fe586d3:
set: fix the int problem for qsort
1 file changed, 8 insertions(+), 2 deletions(-)

zhaozhao.zz in commit 219e29af:
set: fix the int problem for SPOP & SRANDMEMBER
1 file changed, 2 insertions(+), 2 deletions(-)

================================================================================
Redis 4.0.6 Released Thu Dec 4 17:54:10 CET 2017
================================================================================
Expand Down
Loading

0 comments on commit 4b63c6b

Please sign in to comment.