Fix crash where command duration is not reset when client is blocked … #1387
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push, pull_request] | |
permissions: | |
contents: read | |
jobs: | |
test-ubuntu-latest: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: make | |
# Fail build if there are warnings | |
# build with TLS just for compilation coverage | |
run: make all-with-unit-tests SERVER_CFLAGS='-Werror' BUILD_TLS=yes | |
- name: test | |
run: | | |
sudo apt-get install tcl8.6 tclx | |
./runtest --verbose --tags -slow --dump-logs | |
- name: module api test | |
run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs | |
- name: validate commands.def up to date | |
run: | | |
touch src/commands/ping.json | |
make commands.def | |
dirty=$(git diff) | |
if [[ ! -z $dirty ]]; then echo $dirty; exit 1; fi | |
- name: unit tests | |
run: | | |
./src/valkey-unit-tests | |
test-sanitizer-address: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: make | |
# build with TLS module just for compilation coverage | |
run: make SANITIZER=address SERVER_CFLAGS='-Werror -DDEBUG_ASSERTIONS' BUILD_TLS=module | |
- name: testprep | |
# Work around ASAN issue, see https://github.com/google/sanitizers/issues/1716 | |
run: | | |
sudo apt-get install tcl8.6 tclx -y | |
sudo sysctl vm.mmap_rnd_bits=28 | |
- name: test | |
run: ./runtest --verbose --tags -slow --dump-logs | |
- name: module api test | |
run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs | |
build-debian-old: | |
runs-on: ubuntu-latest | |
container: debian:buster | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: make | |
run: | | |
apt-get update && apt-get install -y build-essential | |
make SERVER_CFLAGS='-Werror' | |
build-macos-latest: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: make | |
run: make SERVER_CFLAGS='-Werror' | |
build-32bit: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: make | |
run: | | |
sudo apt-get update && sudo apt-get install libc6-dev-i386 | |
make SERVER_CFLAGS='-Werror' 32bit | |
build-libc-malloc: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: make | |
run: make SERVER_CFLAGS='-Werror' MALLOC=libc | |
build-centos7-jemalloc: | |
runs-on: ubuntu-latest | |
container: centos:7 | |
steps: | |
# on centos7, actions/checkout@v4 does not work, so we use v3 | |
# ref. https://github.com/actions/checkout/issues/1487 | |
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 | |
- name: make | |
run: | | |
yum -y install gcc make | |
make SERVER_CFLAGS='-Werror' | |