question about 2.6.3pre2's --link-by-hash behaviour

Paul Slootman paul at debian.org
Fri Sep 24 09:04:54 GMT 2004


One thing that the link-by-hash patch needs is an additional close();
without that, I quickly ran into "too many open files".

--- hashlink.c.old	2004-09-24 10:59:12.000000000 +0200
+++ hashlink.c	2004-09-24 10:59:20.000000000 +0200
@@ -280,6 +280,7 @@
			}
			hashfile = compare_hashfiles(fd, hashfiles);
			hashfiles = NULL;
+			close(fd);
 
			if (hashfile) {
				first = 0;

This is a patch to the patch.... (I hand-edited the patch)

--- link-by-hash.diff.orig	2004-09-24 10:58:38.000000000 +0200
+++ link-by-hash.diff	2004-09-24 11:03:41.000000000 +0200
@@ -24,7 +24,7 @@
  	popt/popthelp.o popt/poptparse.o
 --- orig/hashlink.c	2004-08-13 18:04:59
 +++ hashlink.c	2004-08-13 18:04:59
-@@ -0,0 +1,342 @@
+@@ -0,0 +1,343 @@
 +/*
 +   Copyright (C) Cronosys, LLC 2004
 +
@@ -307,6 +307,7 @@
 +			}
 +			hashfile = compare_hashfiles(fd, hashfiles);
 +			hashfiles = NULL;
++			close(fd);
 +
 +			if (hashfile) {
 +				first = 0;


Paul Slootman


More information about the rsync mailing list