RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Per Øyvind Karlsen
Root: /v/rpm/cvs Email: pkarlsen@rpm5.org
Module: rpm Date: 09-Dec-2007 18:28:29
Branch: rpm-4_5 Handle: 2007120917282800
Modified files: (Branch: rpm-4_5)
rpm/rpmio rpmio.c
Log:
fix parse_hdlist (and so genhdlist2) on heavy loaded boxes for
Mandriva
Summary:
Revision Changes Path
1.79.2.7 +16 -0 rpm/rpmio/rpmio.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/rpmio/rpmio.c
============================================================================
$ cvs diff -u -r1.79.2.6 -r1.79.2.7 rpmio.c
--- rpm/rpmio/rpmio.c 9 Dec 2007 03:42:27 -0000 1.79.2.6
+++ rpm/rpmio/rpmio.c 9 Dec 2007 17:28:28 -0000 1.79.2.7
@@ -367,7 +367,15 @@
fd->oflags = 0;
fd->omode = 0;
fd->url = NULL;
+#if defined(RPM_VENDOR_MANDRIVA)
+ /* important to fix parse_hdlist (and so genhdlist2) on heavy loaded boxes,
+ * otherwise it timeouts after a read miss of 1 second (even a pipe),
+ * and there is no way we can retry since we would need to backtrack the fd
+ */
+ fd->rd_timeoutsecs = 60;
+#else
fd->rd_timeoutsecs = 1; /* XXX default value used to be -1 */
+#endif
fd->contentLength = fd->bytesRemain = -1;
fd->wr_chunked = 0;
fd->syserrno = 0;
@@ -2297,7 +2305,15 @@
fd = fdOpen(path, flags, mode);
if (fd) {
fdSetIo(fd, ufdio);
+#if defined(RPM_VENDOR_MANDRIVA)
+ /* important to fix parse_hdlist (and so genhdlist2) on heavy loaded boxes,
+ * otherwise it timeouts after a read miss of 1 second (even a pipe),
+ * and there is no way we can retry since we would need to backtrack the fd
+ */
+ fd->rd_timeoutsecs = 60;
+#else
fd->rd_timeoutsecs = 1;
+#endif
fd->contentLength = fd->bytesRemain = -1;
}
break;
@@ .
Received on Sun Dec 9 18:28:29 2007