import rsync-3.1.3-8.el8
This commit is contained in:
parent
c27234e827
commit
b26eacf15a
33
SOURCES/rsync-3.1.2-vvv-hang.patch
Normal file
33
SOURCES/rsync-3.1.2-vvv-hang.patch
Normal file
@ -0,0 +1,33 @@
|
||||
diff --git a/io.c b/io.c
|
||||
index 999c34e5..ceff3784 100644
|
||||
--- a/io.c
|
||||
+++ b/io.c
|
||||
@@ -954,8 +954,17 @@ int send_msg(enum msgcode code, const char *buf, size_t len, int convert)
|
||||
} else
|
||||
#endif
|
||||
needed = len + 4 + 3;
|
||||
- if (iobuf.msg.len + needed > iobuf.msg.size)
|
||||
- perform_io(needed, PIO_NEED_MSGROOM);
|
||||
+ if (iobuf.msg.len + needed > iobuf.msg.size) {
|
||||
+ if (!am_receiver)
|
||||
+ perform_io(needed, PIO_NEED_MSGROOM);
|
||||
+ else { /* We allow the receiver to increase their iobuf.msg size to avoid a deadlock. */
|
||||
+ size_t old_size = iobuf.msg.size;
|
||||
+ restore_iobuf_size(&iobuf.msg);
|
||||
+ realloc_xbuf(&iobuf.msg, iobuf.msg.size * 2);
|
||||
+ if (iobuf.msg.pos + iobuf.msg.len > old_size)
|
||||
+ memcpy(iobuf.msg.buf + old_size, iobuf.msg.buf, iobuf.msg.pos + iobuf.msg.len - old_size);
|
||||
+ }
|
||||
+ }
|
||||
|
||||
pos = iobuf.msg.pos + iobuf.msg.len; /* Must be set after any flushing. */
|
||||
if (pos >= iobuf.msg.size)
|
||||
@@ -1176,7 +1185,7 @@ int read_line(int fd, char *buf, size_t bufsiz, int flags)
|
||||
|
||||
#ifdef ICONV_OPTION
|
||||
if (flags & RL_CONVERT && iconv_buf.size < bufsiz)
|
||||
- realloc_xbuf(&iconv_buf, bufsiz + 1024);
|
||||
+ realloc_xbuf(&iconv_buf, ROUND_UP_1024(bufsiz) + 1024);
|
||||
#endif
|
||||
|
||||
start:
|
@ -9,7 +9,7 @@
|
||||
Summary: A program for synchronizing files over a network
|
||||
Name: rsync
|
||||
Version: 3.1.3
|
||||
Release: 7%{?dist}
|
||||
Release: 8%{?dist}
|
||||
Group: Applications/Internet
|
||||
URL: http://rsync.samba.org/
|
||||
|
||||
@ -31,6 +31,7 @@ Patch0: rsync-man.patch
|
||||
Patch1: rsync-3.0.6-iconv-logging.patch
|
||||
Patch2: rsync-3.1.3-covscan.patch
|
||||
Patch3: rsync-3.1.2-remove-symlinks.patch
|
||||
Patch4: rsync-3.1.2-vvv-hang.patch
|
||||
|
||||
%description
|
||||
Rsync uses a reliable algorithm to bring remote and host files into
|
||||
@ -72,6 +73,7 @@ patch -p1 -i patches/copy-devices.diff
|
||||
%patch1 -p1 -b .iconv
|
||||
%patch2 -p1 -b .covscan
|
||||
%patch3 -p1 -b .symlinks
|
||||
%patch4 -p1 -b .vvv
|
||||
|
||||
%build
|
||||
|
||||
@ -119,6 +121,9 @@ chmod -x support/*
|
||||
%systemd_postun_with_restart rsyncd.service
|
||||
|
||||
%changelog
|
||||
* Wed Jun 10 2020 Michal Ruprich <michalruprich@gmail.com> - 3.1.3-8
|
||||
- Resolves: #1775561 - rsync 3.1.2 hangs when run with -vvv to sync a large repository
|
||||
|
||||
* Tue Oct 29 2019 Michal Ruprich <mruprich@redhat.com> - 3.1.3-7
|
||||
- Resolves: #1693162 - remove-source-files fails with symlinks
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user