From aa1e21dd997d3f84e463b2383ab8b55ded5e60c2 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Fri, 3 Dec 2021 10:58:54 +0300 Subject: [PATCH] Release 0.6.9 New features: - Build Vitastor driver as part of QEMU - Implement renaming images in CLI (vitastor-cli modify --rename) - Add vitastor-cli alloc-osd and simple-offsets commands and use them in make-osd, thus removing the dependency on etcdctl - Make monitor remove stale deleted inode statistics from etcd automatically - Implement OSD address selection from a subnet, thus removing the need to specify OSD addresses in startup scripts explicitly Bug fixes: - Fix client failover in case of etcd shutdown or crash (make client survive etcd failures) - Stick to the last live etcd in OSD and mon to prevent random failures when one of etcds is down - Fix incorrect copying of data from journal to the data device which could lead to data corruption - Prefer local etcd IPs in OSD - Remove the total PG count restriction in optimize_change which was sometimes leading to inability to redistribute PGs over OSDs - Fix error response parsing on a failed pg state report - Fix slow linear writes with RDMA by changing default buffer settings - Fix possible 'TypeError' in openstack nova when using Vitastor cinder driver - Fix bugs in vitastor-cli create, ls, rm, modify commands Patch changes: - Add a patch for libvirt 7.6 - Add patches for QEMU 6.0 and 6.1 - Fix config file path XML location parsing in libvirt patches - Replace _ with - in QEMU options - Fix possible 'TypeError' in openstack nova when using Vitastor cinder driver - Fix possible crashes of QEMU block driver in case of incorrect options --- CMakeLists.txt | 2 +- csi/Makefile | 2 +- csi/deploy/004-csi-nodeplugin.yaml | 2 +- csi/deploy/007-csi-provisioner.yaml | 2 +- csi/src/config.go | 2 +- debian/changelog | 2 +- debian/vitastor.Dockerfile | 8 ++++---- patches/cinder-vitastor.py | 2 +- rpm/build-tarball.sh | 2 +- rpm/vitastor-el7.Dockerfile | 2 +- rpm/vitastor-el7.spec | 4 ++-- rpm/vitastor-el8.Dockerfile | 2 +- rpm/vitastor-el8.spec | 4 ++-- src/CMakeLists.txt | 2 +- src/vitastor.pc.in | 2 +- 15 files changed, 20 insertions(+), 20 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index cab0572a5..93caf9b6c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,6 @@ cmake_minimum_required(VERSION 2.8) project(vitastor) -set(VERSION "0.6.8") +set(VERSION "0.6.9") add_subdirectory(src) diff --git a/csi/Makefile b/csi/Makefile index d141d67e6..ef38299a4 100644 --- a/csi/Makefile +++ b/csi/Makefile @@ -1,4 +1,4 @@ -VERSION ?= v0.6.8 +VERSION ?= v0.6.9 all: build push diff --git a/csi/deploy/004-csi-nodeplugin.yaml b/csi/deploy/004-csi-nodeplugin.yaml index 23995ce9a..ea18967c9 100644 --- a/csi/deploy/004-csi-nodeplugin.yaml +++ b/csi/deploy/004-csi-nodeplugin.yaml @@ -49,7 +49,7 @@ spec: capabilities: add: ["SYS_ADMIN"] allowPrivilegeEscalation: true - image: vitalif/vitastor-csi:v0.6.8 + image: vitalif/vitastor-csi:v0.6.9 args: - "--node=$(NODE_ID)" - "--endpoint=$(CSI_ENDPOINT)" diff --git a/csi/deploy/007-csi-provisioner.yaml b/csi/deploy/007-csi-provisioner.yaml index f626d66a5..ede208645 100644 --- a/csi/deploy/007-csi-provisioner.yaml +++ b/csi/deploy/007-csi-provisioner.yaml @@ -116,7 +116,7 @@ spec: privileged: true capabilities: add: ["SYS_ADMIN"] - image: vitalif/vitastor-csi:v0.6.8 + image: vitalif/vitastor-csi:v0.6.9 args: - "--node=$(NODE_ID)" - "--endpoint=$(CSI_ENDPOINT)" diff --git a/csi/src/config.go b/csi/src/config.go index 2d94d008a..e9bcb58a6 100644 --- a/csi/src/config.go +++ b/csi/src/config.go @@ -5,7 +5,7 @@ package vitastor const ( vitastorCSIDriverName = "csi.vitastor.io" - vitastorCSIDriverVersion = "0.6.8" + vitastorCSIDriverVersion = "0.6.9" ) // Config struct fills the parameters of request or user input diff --git a/debian/changelog b/debian/changelog index 8791057d4..32817c2e9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -vitastor (0.6.8-1) unstable; urgency=medium +vitastor (0.6.9-1) unstable; urgency=medium * RDMA support * Bugfixes diff --git a/debian/vitastor.Dockerfile b/debian/vitastor.Dockerfile index f74502f89..c64da6f52 100644 --- a/debian/vitastor.Dockerfile +++ b/debian/vitastor.Dockerfile @@ -33,8 +33,8 @@ RUN set -e -x; \ mkdir -p /root/packages/vitastor-$REL; \ rm -rf /root/packages/vitastor-$REL/*; \ cd /root/packages/vitastor-$REL; \ - cp -r /root/vitastor vitastor-0.6.8; \ - cd vitastor-0.6.8; \ + cp -r /root/vitastor vitastor-0.6.9; \ + cd vitastor-0.6.9; \ ln -s /root/fio-build/fio-*/ ./fio; \ FIO=$(head -n1 fio/debian/changelog | perl -pe 's/^.*\((.*?)\).*$/$1/'); \ ls /usr/include/linux/raw.h || cp ./debian/raw.h /usr/include/linux/raw.h; \ @@ -47,8 +47,8 @@ RUN set -e -x; \ rm -rf a b; \ echo "dep:fio=$FIO" > debian/fio_version; \ cd /root/packages/vitastor-$REL; \ - tar --sort=name --mtime='2020-01-01' --owner=0 --group=0 --exclude=debian -cJf vitastor_0.6.8.orig.tar.xz vitastor-0.6.8; \ - cd vitastor-0.6.8; \ + tar --sort=name --mtime='2020-01-01' --owner=0 --group=0 --exclude=debian -cJf vitastor_0.6.9.orig.tar.xz vitastor-0.6.9; \ + cd vitastor-0.6.9; \ V=$(head -n1 debian/changelog | perl -pe 's/^.*\((.*?)\).*$/$1/'); \ DEBFULLNAME="Vitaliy Filippov " dch -D $REL -v "$V""$REL" "Rebuild for $REL"; \ DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage --jobs=auto -sa; \ diff --git a/patches/cinder-vitastor.py b/patches/cinder-vitastor.py index ee99e6d6d..3f6f26ad7 100644 --- a/patches/cinder-vitastor.py +++ b/patches/cinder-vitastor.py @@ -50,7 +50,7 @@ from cinder.volume import configuration from cinder.volume import driver from cinder.volume import volume_utils -VERSION = '0.6.8' +VERSION = '0.6.9' LOG = logging.getLogger(__name__) diff --git a/rpm/build-tarball.sh b/rpm/build-tarball.sh index 521c265a8..2f7a22ddc 100755 --- a/rpm/build-tarball.sh +++ b/rpm/build-tarball.sh @@ -25,4 +25,4 @@ rm fio mv fio-copy fio FIO=`rpm -qi fio | perl -e 'while(<>) { /^Epoch[\s:]+(\S+)/ && print "$1:"; /^Version[\s:]+(\S+)/ && print $1; /^Release[\s:]+(\S+)/ && print "-$1"; }'` perl -i -pe 's/(Requires:\s*fio)([^\n]+)?/$1 = '$FIO'/' $VITASTOR/rpm/vitastor-el$EL.spec -tar --transform 's#^#vitastor-0.6.8/#' --exclude 'rpm/*.rpm' -czf $VITASTOR/../vitastor-0.6.8$(rpm --eval '%dist').tar.gz * +tar --transform 's#^#vitastor-0.6.9/#' --exclude 'rpm/*.rpm' -czf $VITASTOR/../vitastor-0.6.9$(rpm --eval '%dist').tar.gz * diff --git a/rpm/vitastor-el7.Dockerfile b/rpm/vitastor-el7.Dockerfile index 644c58e27..d4720a1ef 100644 --- a/rpm/vitastor-el7.Dockerfile +++ b/rpm/vitastor-el7.Dockerfile @@ -34,7 +34,7 @@ ADD . /root/vitastor RUN set -e; \ cd /root/vitastor/rpm; \ sh build-tarball.sh; \ - cp /root/vitastor-0.6.8.el7.tar.gz ~/rpmbuild/SOURCES; \ + cp /root/vitastor-0.6.9.el7.tar.gz ~/rpmbuild/SOURCES; \ cp vitastor-el7.spec ~/rpmbuild/SPECS/vitastor.spec; \ cd ~/rpmbuild/SPECS/; \ rpmbuild -ba vitastor.spec; \ diff --git a/rpm/vitastor-el7.spec b/rpm/vitastor-el7.spec index 304dc0c45..d94d4d2a6 100644 --- a/rpm/vitastor-el7.spec +++ b/rpm/vitastor-el7.spec @@ -1,11 +1,11 @@ Name: vitastor -Version: 0.6.8 +Version: 0.6.9 Release: 1%{?dist} Summary: Vitastor, a fast software-defined clustered block storage License: Vitastor Network Public License 1.1 URL: https://vitastor.io/ -Source0: vitastor-0.6.8.el7.tar.gz +Source0: vitastor-0.6.9.el7.tar.gz BuildRequires: liburing-devel >= 0.6 BuildRequires: gperftools-devel diff --git a/rpm/vitastor-el8.Dockerfile b/rpm/vitastor-el8.Dockerfile index 31f5f2cca..e76f66b87 100644 --- a/rpm/vitastor-el8.Dockerfile +++ b/rpm/vitastor-el8.Dockerfile @@ -33,7 +33,7 @@ ADD . /root/vitastor RUN set -e; \ cd /root/vitastor/rpm; \ sh build-tarball.sh; \ - cp /root/vitastor-0.6.8.el8.tar.gz ~/rpmbuild/SOURCES; \ + cp /root/vitastor-0.6.9.el8.tar.gz ~/rpmbuild/SOURCES; \ cp vitastor-el8.spec ~/rpmbuild/SPECS/vitastor.spec; \ cd ~/rpmbuild/SPECS/; \ rpmbuild -ba vitastor.spec; \ diff --git a/rpm/vitastor-el8.spec b/rpm/vitastor-el8.spec index a2cb2d812..645afa0ce 100644 --- a/rpm/vitastor-el8.spec +++ b/rpm/vitastor-el8.spec @@ -1,11 +1,11 @@ Name: vitastor -Version: 0.6.8 +Version: 0.6.9 Release: 1%{?dist} Summary: Vitastor, a fast software-defined clustered block storage License: Vitastor Network Public License 1.1 URL: https://vitastor.io/ -Source0: vitastor-0.6.8.el8.tar.gz +Source0: vitastor-0.6.9.el8.tar.gz BuildRequires: liburing-devel >= 0.6 BuildRequires: gperftools-devel diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 8a790ff5a..2879990b9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -15,7 +15,7 @@ if("${CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/local/?$") set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") endif() -add_definitions(-DVERSION="0.6.8") +add_definitions(-DVERSION="0.6.9") add_definitions(-Wall -Wno-sign-compare -Wno-comment -Wno-parentheses -Wno-pointer-arith -fdiagnostics-color=always -I ${CMAKE_SOURCE_DIR}/src) if (${WITH_ASAN}) add_definitions(-fsanitize=address -fno-omit-frame-pointer) diff --git a/src/vitastor.pc.in b/src/vitastor.pc.in index a98b146cd..12ce0a9b4 100644 --- a/src/vitastor.pc.in +++ b/src/vitastor.pc.in @@ -6,7 +6,7 @@ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ Name: Vitastor Description: Vitastor client library -Version: 0.6.8 +Version: 0.6.9 Libs: -L${libdir} -lvitastor_client Cflags: -I${includedir}