A couple of fixes for EC pools
- Fix a segfault possible on partial EC overwrite in 1234 -> 5030 rebalance scenario
- Fix two problems leading to EC pools stalling on rebalance & parallel sudden stops
of OSDs, for example during a sudden poweroff of a host:
- Recovery auto-tuning (1.4.0 feature) could apply too large delays and stall
the EC journal - fixed by limiting delays with a new recovery_tune_sleep_cutoff_us
parameter (10 seconds by default) and applying recovery pauses before write
operations, not after them, to not occupy space in the journal for long time
- Dynamic journal space reservation (1.3.0 feature) wasn't accounting new writes
when checking the limit so OSDs could still fill the journal fully and stall -
fixed by including new writes into the limit
- Print etcd dbSize instead of dbSizeInUse in status
29 lines
1.1 KiB
Docker
29 lines
1.1 KiB
Docker
# Build packages for AlmaLinux 9 inside a container
|
|
# cd ..; podman build -t vitastor-el9 -v `pwd`/packages:/root/packages -f rpm/vitastor-el9.Dockerfile .
|
|
|
|
FROM almalinux:9
|
|
|
|
WORKDIR /root
|
|
|
|
RUN sed -i 's/enabled=0/enabled=1/' /etc/yum.repos.d/*.repo
|
|
RUN dnf -y install epel-release dnf-plugins-core
|
|
RUN dnf -y install https://vitastor.io/rpms/centos/9/vitastor-release-1.0-1.el9.noarch.rpm
|
|
RUN dnf -y install gcc-c++ gperftools-devel fio nodejs rpm-build jerasure-devel libisa-l-devel gf-complete-devel rdma-core-devel libarchive liburing-devel cmake
|
|
RUN dnf download --source fio
|
|
RUN rpm --nomd5 -i fio*.src.rpm
|
|
RUN cd ~/rpmbuild/SPECS && dnf builddep -y --spec fio.spec
|
|
|
|
ADD . /root/vitastor
|
|
|
|
RUN set -e; \
|
|
cd /root/vitastor/rpm; \
|
|
sh build-tarball.sh; \
|
|
cp /root/vitastor-1.4.4.el9.tar.gz ~/rpmbuild/SOURCES; \
|
|
cp vitastor-el9.spec ~/rpmbuild/SPECS/vitastor.spec; \
|
|
cd ~/rpmbuild/SPECS/; \
|
|
rpmbuild -ba vitastor.spec; \
|
|
mkdir -p /root/packages/vitastor-el9; \
|
|
rm -rf /root/packages/vitastor-el9/*; \
|
|
cp ~/rpmbuild/RPMS/*/vitastor* /root/packages/vitastor-el9/; \
|
|
cp ~/rpmbuild/SRPMS/vitastor* /root/packages/vitastor-el9/
|