- 23 Dec, 2020 1 commit
-
-
Felix Bünemann authored
Homebrew for darwin-arm64 uses /opt/homebrew instead of /usr/local as the prefix, so that it can coexist with darwin-x86_64 using Rosetta 2.
-
- 17 Dec, 2020 1 commit
-
-
Nick Revin authored
-
- 13 Dec, 2020 1 commit
-
-
Yossi Gottlieb authored
* Allow runtest-moduleapi use a different 'make', for systems where GNU Make is 'gmake'. * Fix issue with builds on Solaris re-building everything from scratch due to CFLAGS/LDFLAGS not stored. * Fix compile failure on Solaris due to atomicvar and a bunch of warnings. * Fix garbled log timestamps on Solaris.
-
- 22 Nov, 2020 1 commit
-
-
Yossi Gottlieb authored
When USE_SYSTEMD=yes is specified, try to use pkg-config to determine libsystemd linker flags. If not found, silently fall back to simply using "-lsystemd". We now use a LIBSYSTEMD_LIBS variable so users can explicitly override it and specify their own library. If USE_SYSTEMD is unspecified the old behavior of auto-enabling it if both pkg-config and libsystemd are available is retained.
-
- 28 Oct, 2020 1 commit
-
-
filipe oliveira authored
-
- 26 Oct, 2020 1 commit
-
-
filipe oliveira authored
- add test suite coverage for redis-benchmark - add --version (similar to what redis-cli has) - fix bug sending more requests than intended when pipeline > 1. - when done sending requests, avoid freeing client in the write handler, in theory before responses are received (probably dead code since the read handler will call clientDone first) Co-authored-by:
Oran Agra <oran@redislabs.com>
-
- 01 Oct, 2020 1 commit
-
-
Rafi Einstein authored
-
- 29 Sep, 2020 1 commit
-
-
David CARLIER authored
-
- 28 Sep, 2020 1 commit
-
-
WuYunlong authored
-
- 23 Sep, 2020 1 commit
-
-
David CARLIER authored
mainly backtrace and register dump support.
-
- 21 Sep, 2020 1 commit
-
- 17 Sep, 2020 1 commit
-
-
Wang Yuan authored
Redis 6.0 introduces I/O threads, it is so cool and efficient, we use C11 _Atomic to establish inter-thread synchronization without mutex. But the compiler that must supports C11 _Atomic can compile redis code, that brings a lot of inconvenience since some common platforms can't support by default such as CentOS7, so we want to implement redis atomic type to make it more portable. We have implemented our atomic variable for redis that only has 'relaxed' operations in src/atomicvar.h, so we implement some operations with 'sequentially-consistent', just like the default behavior of C11 _Atomic that can establish inter-thread synchronization. And we replace all uses of C11 _Atomic with redis atomic variable. Our implementation of redis atomic variable uses C11 _Atomic, __atomic or __sync macros if available, it supports most common platforms, and we will detect automatically which feature we use. In Makefile we use a dummy file to detect if the compiler supports C11 _Atomic. Now for gcc, we can compile redis code theoretically if your gcc version is not less than 4.1.2(starts to support __sync_xxx operations). Otherwise, we remove use mutex fallback to implement redis atomic variable for performance and test. You will get compiling errors if your compiler doesn't support all features of above. For cover redis atomic variable tests, we add other CI jobs that build redis on CentOS6 and CentOS7 and workflow daily jobs that run the tests on them. For them, we just install gcc by default in order to cover different compiler versions, gcc is 4.4.7 by default installation on CentOS6 and 4.8.5 on CentOS7. We restore the feature that we can test redis with Helgrind to find data race errors. But you need install Valgrind in the default path configuration firstly before running your tests, since we use macros in helgrind.h to tell Helgrind inter-thread happens-before relationship explicitly for avoiding false positives. Please open an issue on github if you find data race errors relate to this commit. Unrelated: - Fix redefinition of typedef 'RedisModuleUserChangedFunc' For some old version compilers, they will report errors or warnings, if we re-define function type.
-
- 01 Sep, 2020 1 commit
-
-
Yossi Gottlieb authored
All user-supplied variables that affect the build should be explicitly persisted. Fixes #7254
-
- 28 Aug, 2020 1 commit
-
-
Jim Brunner authored
Update adds a general source for retrieving a monotonic time. In addition, AE has been updated to utilize the new monotonic clock for timer processing. This performance improvement is **not** enabled in a default build due to various H/W compatibility concerns, see README.md for details. It does however change the default use of gettimeofday with clock_gettime and somewhat improves performance. This update provides the following 1. An interface for retrieving a monotonic clock. getMonotonicUs returns a uint64_t (aka monotime) with the number of micro-seconds from an arbitrary point. No more messing with tv_sec/tv_usec. Simple routines are provided for measuring elapsed milli-seconds or elapsed micro-seconds (the most common use case for a monotonic timer). No worries about time moving backwards. 2. High-speed assembler implementation for x86 and ARM. The standard method for retrieving the monotonic clock is POSIX.1b (1993): cloc...
-
- 25 Aug, 2020 1 commit
-
-
filipe oliveira authored
A first step to enable a consistent full percentile analysis on query latency so that we can fully understand the performance and stability characteristics of the redis-server system we are measuring. It also improves the instantaneous reported metrics, and the csv output format.
-
- 11 Aug, 2020 1 commit
-
-
Mota authored
Obsoletes the need to run `make` before `make test`.
-
- 10 Jul, 2020 1 commit
-
-
James Hilliard authored
-
- 12 May, 2020 1 commit
-
-
David Carlier authored
This platform supports CPU affinity (but not OpenBSD).
-
- 02 May, 2020 1 commit
-
-
zhenwei pi authored
Currently, there are several types of threads/child processes of a redis server. Sometimes we need deeply optimise the performance of redis, so we would like to isolate threads/processes. There were some discussion about cpu affinity cases in the issue: https://github.com/antirez/redis/issues/2863 So implement cpu affinity setting by redis.conf in this patch, then we can config server_cpulist/bio_cpulist/aof_rewrite_cpulist/ bgsave_cpulist by cpu list. Examples of cpulist in redis.conf: server_cpulist 0-7:2 means cpu affinity 0,2,4,6 bio_cpulist 1,3 means cpu affinity 1,3 aof_rewrite_cpulist 8-11 means cpu affinity 8,9,10,11 bgsave_cpulist 1,10-11 means cpu affinity 1,10,11 Test on linux/freebsd, both work fine. Signed-off-by:
zhenwei pi <pizhenwei@bytedance.com>
-
- 25 Apr, 2020 1 commit
-
-
Madelyn Olson authored
-
- 27 Mar, 2020 1 commit
-
-
antirez authored
-
- 12 Mar, 2020 1 commit
-
-
bodong.ybd authored
-
- 01 Jan, 2020 1 commit
-
-
John Sully authored
-
- 29 Nov, 2019 1 commit
-
-
antirez authored
-
- 19 Nov, 2019 1 commit
-
-
Johannes Truschnigg authored
This adds Makefile/build-system support for USE_SYSTEMD=(yes|no|*). This variable's value determines whether or not libsystemd will be linked at build-time. If USE_SYSTEMD is set to "yes", make will use PKG_CONFIG to check for libsystemd's presence, and fail the build early if it isn't installed/detected properly. If USE_SYSTEM is set to "no", libsystemd will *not* be linked, even if support for it is available on the system redis is being built on. For any other value that USE_SYSTEM might assume (e.g. "auto"), PKG_CONFIG will try to determine libsystemd's presence, and set up the build process to link against it, if it was indicated as being installed/available. This approach has a number of repercussions of its own, most importantly the following: If you build redis on a system that actually has systemd support, but no libsystemd-dev package(s) installed, you'll end up *without* support for systemd notification/status reporting support in redis-server. This changes established runtime behaviour. I'm not sure if the build system and/or the server binary should indicate this. I'm also wondering if not actually having systemd-notify-support, but requesting it via the server's config, should result in a fatal error now.
-
- 16 Oct, 2019 1 commit
-
-
Yossi Gottlieb authored
-
- 07 Oct, 2019 2 commits
-
-
Yossi Gottlieb authored
Add configuration options for TLS protocol versions, ciphers/cipher suites selection, etc.
-
Yossi Gottlieb authored
* Introduce a connection abstraction layer for all socket operations and integrate it across the code base. * Provide an optional TLS connections implementation based on OpenSSL. * Pull a newer version of hiredis with TLS support. * Tests, redis-cli updates for TLS support.
-
- 04 Oct, 2019 1 commit
-
-
antirez authored
-
- 12 Sep, 2019 1 commit
-
-
antirez authored
memory.h include removed, types substituted with stdint types.
-
- 07 Jul, 2019 1 commit
-
-
Guy Korland authored
thanks to @rafie
-
- 29 Jun, 2019 1 commit
-
-
antirez authored
-
- 07 May, 2019 1 commit
-
-
zhaozhao.zz authored
-
- 06 May, 2019 1 commit
-
-
Ubuntu authored
Now threads are stopped even when the connections drop immediately to zero, not allowing the networking code to detect the condition and stop the threads. serverCron() will handle that.
-
- 07 Mar, 2019 1 commit
-
-
Brad Solomon authored
On `make uninstall`, removes: - /usr/local/bin/redis-benchmark - /usr/local/bin/redis-check-aof - /usr/local/bin/redis-check-rdb - /usr/local/bin/redis-cli - /usr/local/bin/redis-sentinel - /usr/local/bin/redis-server (Only the src/ versions are removed in `make clean`)
-
- 01 Mar, 2019 1 commit
-
-
artix authored
-
- 21 Feb, 2019 1 commit
-
-
antirez authored
-
- 09 Jan, 2019 1 commit
-
-
antirez authored
-
- 25 Nov, 2018 2 commits
-
-
David Carlier authored
Special treatment here as backtrace support is optional, cannot be found via pkg-config and similar neither.
-
David Carlier authored
FreeBSD/DragonFlyBSD does have backtrace only it does not belong to libc.
-