BackupPC-users

[BackupPC-users] BackupPC File::RsyncP issues

2009-08-18 18:21:16
Subject: [BackupPC-users] BackupPC File::RsyncP issues
From: Jim Leonard <trixter AT oldskool DOT org>
To: backuppc-users AT lists.sourceforge DOT net
Date: Tue, 18 Aug 2009 17:00:05 -0500
First off, I'm a happy user of BackupPC; I'm only posting because I have 
an architecture question resulting in bad performance that I'm hoping 
someone can answer.

I have a need to back up Windows clients.  I got smb-based backups 
working very well, or so I thought -- no matter what I tried, I couldn't 
get some files backed up, even though the backuppc user was in the 
Administrators group and I had run icacls to grant backuppc full file 
rights.  So I went through the trouble of setting up rsyncd and now I'm 
backing up every file without an issue, except that things are moving 
VERY slowly, even for new files that haven't been backed up before. 
With smb, which used smbclient to do the transfers, I was seeing 
transfer speeds of 40-65MB/s over a gigabit network -- with rsync-based 
backups, I am seeing about 6MB/s, ten times slower.

I profiled File::RsyncP which is what BackupPC_dump appears to be using, 
and found this troubling report after a profile time of one day:

time elapsed (wall):   86034.3727
time running program:  85959.5328  (99.91%)
time profiling (est.): 74.7665  (0.09%)

%Time    Sec.      #calls   sec/call  F  name
83.30 71605.7838   913708   0.078368  ?  File::RsyncP::pollChild
15.98 13737.1191      261  52.632640     File::RsyncP::writeFlush
  0.21  176.3028    121432   0.001452     File::RsyncP::getData
(snip)

As you can see, pollChild is called a ridiculously large number of 
times, which is eating up nearly 70% of the CPU time trying to do a 
backup.  This is extremely inefficient and completely explains why my 
backups are taking so long over rsync (the CPU spends most of it's time 
in pollChild).

So, my questions are:

- Is there a reason BackupPC needs to emulate rsync through File::RsyncP 
instead of just using rsync itself?

- If not, is anyone maintaining File::RsyncP who can optimize that code 
and/or redesign it?

Thanks in advance for any advice.
-- 
Jim Leonard (trixter AT oldskool DOT org)            http://www.oldskool.org/
Help our electronic games project:           http://www.mobygames.com/
Or check out some trippy MindCandy at     http://www.mindcandydvd.com/
A child borne of the home computer wars: http://trixter.wordpress.com/


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
BackupPC-users mailing list
BackupPC-users AT lists.sourceforge DOT net
List:    https://lists.sourceforge.net/lists/listinfo/backuppc-users
Wiki:    http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/