Re: BackupPC_refCountUpdate: ERROR pool file ... has digest ... instead of ...
Ronald Colcernian <[email protected]> Mon, 3 Aug 2026 14:11:42 -0400
| Newsgroups | gmane.comp.sysutils.backup.backuppc.general |
|---|---|
| Message-ID | <CAAb-kPcxe2bqudeJoTVJtJUEqo_St4H+RW0cdWc5a8W_kMj+Qg@mail.gmail.com> |
--===============2683405257532668443== Content-Type: multipart/alternative; boundary="00000000000014ca7f06582879a2" --00000000000014ca7f06582879a2 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Ged, Sorry it took a while to get back to you. I spend an amount of time running BackuPC_refCountUpdate -h <host> -c -f -o 3 on all of my backups as you pointed out in a previous email, they were batched in 11 backups that were very old and deletable. So now I'd like to clean up this problem. Here is one example of an actual message: 2026-08-03 01:22:41 admin : BackupPC_refCountUpdate: ERROR pool file /bkpcdata/new_BackupPC_Data/cpool/1c/56/1d5621373a63a74a8872a46f02b40850 has digest d41d8cd98f00b204e9800998ecf8427e instead of 1d5621373a63a74a8872a46f02b40850 Note that digest d41d8.....427e is the digest of an empty file. I have about 48 of these messages from the last three days. I have researched each of these and they all point to a zero sized file. Understanding that, I ran the command find cpool -type f -size 0 | wc -l and there are 798 of these zero sized files. I have noticed that the nightly while it complains about these cpool file(s), it does not remedy it. I've spend a while reading backuppc-users email list, and have not really got a good answer, or course of action. *Questions:* 1) Can I remediate by deleting those files, would be easy with a short bash script. 2) Is there a way to take the "has digest number" and find the backup it came from? and then delete that backup, perhaps 3) I could with a bash script change the instead of digest to the zero file size digest. What is your best advice? Thank you in advance. Ron Colcernian An important note in my opinion these have accumulated to this extend as a result of years of running BackupPC, hard drive failures, rsync TopDir to a new machine (that was brutal BTW), conversion V3 to V4, and gross neglect. I ran find cpool On Thu, Jul 23, 2026 at 6:41=E2=80=AFPM G.W. Haywood <[email protected]= o.uk> wrote: > Hi there, > > Long day today, sorry. > > On Thu, 23 Jul 2026, Ronald Colcernian wrote: > > > I have 1/2 dozen of these errors in the main BackupPC Log file. > > > > Run: I found the following recommendations: > > > > BackupPC_refCountUpdate -m -f -c > > > > *Questions:* > > 1) Is this the proper tool to address this type of error? > > Not necessarily. I'd want to know *why* this has happened. This tool > won't tell you that. When the problem is fixed, I'd want to know that > it has stopped happening. It's a good tool for that. > > The errors are presumably generated and logged by the nightly checks. > If you have $Conf{PoolNightlyDigestCheckPercent} at the default 1% per > nightly run, each nightly run checks a random 1% of the pool files. > If that's the case and you have half a dozen of the errors it could be > that there are a lot more waiting to be discovered. I'd be more than > a little uncomfortable with that. Have you done checks on the storage > medium/filesystem(s)? I'd be wondering about their reliability. On > the systems here I'm almost sure I've never seen this error message. > I grepped the last seven years of logs on my busiest backup machine > and found none. > > > if not what would be the better tool? > > You could change the 1% setting (if it is still at the default) to > check files more quickly, or try the tool posted in the Wiki here: > > https://github.com/guille2306/backuppc_check_pool > > it will check all the pool if you want to. (Strictly speaking the cpool.= ) > > > 2) How long will it take using the tool? > > I understand this is a function of the speed of the machine and disk > > subsystem. > > Hmmmm... perhaps more to the point it will depend on how many pool > files there are and how large they are. Very difficult to say, but > you can at least get an idea using the 'progress' option. Probably > with a 3TByte pool it won't be like greased lightning on *anything*. > You can stop a test at any time with CTRL-C, it won't break things. > That means you can try a test with one set of options and, if looks > like it's going to take too long for you stop it and try again with > different options. > > > I prefer that BackupPC is not shutdown for days. > > :) > > I'd probably try doing a chunk of checks each day, adjusting 'chunk' > to suit the hardware performance and your waking hours. :/ > > > Can the tool be run by host? > > Yes. If you run it without any options it prints a help page: > > > 8<-----------------------------------------------------------------------= --- > > $ /usr/local/BackupPC/bin/BackupPC_refCountUpdate > Usage: > BackupPC_refCountUpdate -h HOST [-c] [-f] [-F] [-o N] [-p] [-v] > With no other args, updates count db on backups with poolCntDelta > files > and computes the host's total reference counts. Also builds refCn= t > for > any >=3D4.0 backups without refCnts. > -f - do an fsck on this HOST, which involves a rebuild of th= e > last two backup refCnts. poolCntDelta files are ignore= d. > Also forces fsck if requested by needFsck flag files > in TopDir/pc/HOST/refCnt. Equivalent to -o 2. > -F - rebuild all the >=3D4.0 per-backup refCnt files for thi= s > host. Equivalent to -o 3. > -c - compare current count db to new db before replacing > -o N - override $Conf{RefCntFsck}. > -p - don't show progress > -v - verbose > Notes: in case there are legacy (ie: <=3D4.0.0alpha3) unapplied > poolCntDelta > files in TopDir/pc/HOST/refCnt then the -f flag is turned on. > > BackupPC_refCountUpdate -m [-f] [-p] [-c] [-r N-M] [-s] [-v] [-P phase= ] > -m Updates main count db, based on each HOST > -f - do an fsck on all the hosts, ignoring poolCntDelta file= s, > and replacing each host's count db. Will wait for > backups > to finish if any are running. > -F - rebuild all the >=3D4.0 per-backup refCnt files. > -p - don't show progress > -c - clean pool files > -r N-M - process a subset of the main count db, 0 <=3D N <=3D M = <=3D 255 > -s - prints stats > -v - verbose > -P phase Phase from 0..15 each time we run BackupPC_nightly. Us= ed > to compute exact pool size for portions of the pool bas= ed > on the phase and $Conf{PoolSizeNightlyUpdatePeriod}. > > > 8<-----------------------------------------------------------------------= --- > > HTH > > -- > > 73, > Ged. > > > _______________________________________________ > BackupPC-users mailing list > [email protected] > List: https://lists.sourceforge.net/lists/listinfo/backuppc-users > Wiki: https://github.com/backuppc/backuppc/wiki > Project: https://backuppc.github.io/backuppc/ > --00000000000014ca7f06582879a2 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr">Hi Ged,<div><br></div><div>Sorry it took = a while to=C2=A0get back to you.</div><div>I spend an amount of time runnin= g</div><div>BackuPC_refCountUpdate -h <host> -c -f -o 3=C2=A0</div><d= iv>on all=C2=A0 of my backups as you pointed out in a previous email, they = were batched in 11 backups that were very old and deletable.</div><div><br>= </div><div>So now I'd like to clean up this problem. Here is one exampl= e of an actual message:</div><div><pre>2026-08-03 01:22:41 admin : BackupP= C_refCountUpdate: ERROR pool file<br>/bkpcdata/new_BackupPC_Data/cpool/1c/5= 6/1d5621373a63a74a8872a46f02b40850<br>has digest d41d8cd98f00b204e9800998ec= f8427e<br>instead of 1d5621373a63a74a8872a46f02b40850</pre></div><div>Note = that digest d41d8.....427e=C2=A0 is the=C2=A0digest of=C2=A0an empty file.<= /div><div><span style=3D"background-color:transparent"><br></span></div><di= v><span style=3D"background-color:transparent">I have about 48 of these mes= sages from the last three=C2=A0days.</span></div><div><span style=3D"backgr= ound-color:transparent">I have researched=C2=A0each of these and they all p= oint to a zero sized file.</span></div><div><span style=3D"background-color= :transparent"><br></span></div><div><span style=3D"background-color:transpa= rent">Understanding that, I ran the command find cpool -type f -size 0 | wc= -l=C2=A0</span></div><div><span style=3D"background-color:transparent">and= there are 798 of these zero sized files.</span></div><div><span style=3D"b= ackground-color:transparent"><br></span></div><div><span style=3D"backgroun= d-color:transparent">I have noticed that the nightly while it complains abo= ut these=C2=A0cpool file(s), it does not remedy it.</span></div><div><span = style=3D"background-color:transparent"><br></span></div><div><span style=3D= "background-color:transparent">I've spend a while reading backuppc-user= s email list, and have not really got a good answer, or course of action.</= span></div><div><span style=3D"background-color:transparent"><br></span></d= iv><div><span style=3D"background-color:transparent"><b>Questions:</b></spa= n></div><div><span style=3D"background-color:transparent">1) Can I remediat= e by deleting those files, would be easy with a short bash script.</span></= div><div><span style=3D"background-color:transparent"><br></span></div><div= ><span style=3D"background-color:transparent">2) Is there a way to take the= "has digest number" and find the backup it came from?</span></di= v><div><span style=3D"background-color:transparent">and then delete that ba= ckup, perhaps</span></div><div><span style=3D"background-color:transparent"= ><br></span></div><div><span style=3D"background-color:transparent">3) I co= uld with a bash script=C2=A0 change the instead of digest=C2=A0 to the zero= file size digest.</span></div><div><br></div><div>What is your best advice= ?</div><div><br></div><div>Thank you in advance.</div><div><br></div><div>R= on Colcernian</div><div><br></div><div><br></div><div><span style=3D"backgr= ound-color:transparent"><br></span></div><div><span style=3D"background-col= or:transparent">An important note in my opinion these have accumulated=C2= =A0to this extend as a result of</span></div><div><span style=3D"background= -color:transparent">years of running BackupPC, hard drive failures, rsync= =C2=A0 TopDir to a new machine (that was brutal BTW), conversion V3 to V4, = and gross neglect.</span></div><div><span style=3D"background-color:transpa= rent"><br></span></div><div><span style=3D"background-color:transparent"><b= r></span></div><div><span style=3D"background-color:transparent"><br></span= ></div><div><span style=3D"background-color:transparent">I ran find cpool= =C2=A0</span></div><div><br></div></div><br><div class=3D"gmail_quote gmail= _quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Jul 23, 202= 6 at 6:41=E2=80=AFPM G.W. Haywood <<a href=3D"mailto:backup@jubileegroup= .co.uk">[email protected]</a>> wrote:<br></div><blockquote class= =3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rg= b(204,204,204);padding-left:1ex">Hi there,<br> <br> Long day today, sorry.<br> <br> On Thu, 23 Jul 2026, Ronald Colcernian wrote:<br> <br> > I have 1/2 dozen of these errors in the main BackupPC Log file.<br> ><br> > Run: I found the following recommendations:<br> ><br> > BackupPC_refCountUpdate -m -f -c<br> ><br> > *Questions:*<br> > 1) Is this the proper tool to address this type of error?<br> <br> Not necessarily.=C2=A0 I'd want to know *why* this has happened.=C2=A0 = This tool<br> won't tell you that.=C2=A0 When the problem is fixed, I'd want to k= now that<br> it has stopped happening.=C2=A0 It's a good tool for that.<br> <br> The errors are presumably generated and logged by the nightly checks.<br> If you have $Conf{PoolNightlyDigestCheckPercent} at the default 1% per<br> nightly run, each nightly run checks a random 1% of the pool files.<br> If that's the case and you have half a dozen of the errors it could be<= br> that there are a lot more waiting to be discovered.=C2=A0 I'd be more t= han<br> a little uncomfortable with that.=C2=A0 Have you done checks on the storage= <br> medium/filesystem(s)?=C2=A0 I'd be wondering about their reliability.= =C2=A0 On<br> the systems here I'm almost sure I've never seen this error message= .<br> I grepped the last seven years of logs on my busiest backup machine<br> and found none.<br> <br> > if not what would be the better tool?<br> <br> You could change the 1% setting (if it is still at the default) to<br> check files more quickly, or try the tool posted in the Wiki here:<br> <br> <a href=3D"https://github.com/guille2306/backuppc_check_pool" rel=3D"norefe= rrer" target=3D"_blank">https://github.com/guille2306/backuppc_check_pool</= a><br> <br> it will check all the pool if you want to.=C2=A0 (Strictly speaking the cpo= ol.)<br> <br> > 2) How long will it take using the tool?<br> > I understand this is a function of the speed of the machine and disk<b= r> > subsystem.<br> <br> Hmmmm... perhaps more to the point it will depend on how many pool<br> files there are and how large they are.=C2=A0 Very difficult to say, but<br= > you can at least get an idea using the 'progress' option.=C2=A0 Pro= bably<br> with a 3TByte pool it won't be like greased lightning on *anything*.<br= > You can stop a test at any time with CTRL-C, it won't break things.<br> That means you can try a test with one set of options and, if looks<br> like it's going to take too long for you stop it and try again with<br> different options.<br> <br> > I prefer that BackupPC is not shutdown for days.<br> <br> :)<br> <br> I'd probably try doing a chunk of checks each day, adjusting 'chunk= '<br> to suit the hardware performance and your waking hours. :/<br> <br> > Can the tool be run by host?<br> <br> Yes.=C2=A0 If you run it without any options it prints a help page:<br> <br> 8<----------------------------------------------------------------------= ----<br> <br> $ /usr/local/BackupPC/bin/BackupPC_refCountUpdate<br> Usage:<br> =C2=A0 =C2=A0BackupPC_refCountUpdate -h HOST [-c] [-f] [-F] [-o N] [-p] [-v= ]<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0With no other args, updates count db on backups = with poolCntDelta files<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0and computes the host's total reference coun= ts.=C2=A0 Also builds refCnt for<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0any >=3D4.0 backups without refCnts.<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-f=C2=A0 =C2=A0 =C2=A0- do an fsck on thi= s HOST, which involves a rebuild of the<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 last two bac= kup refCnts.=C2=A0 poolCntDelta files are ignored.<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Also forces = fsck if requested by needFsck flag files<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 in TopDir/pc= /HOST/refCnt.=C2=A0 Equivalent to -o 2.<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-F=C2=A0 =C2=A0 =C2=A0- rebuild all the &= gt;=3D4.0 per-backup refCnt files for this<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 host.=C2=A0 = Equivalent to -o 3.<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-c=C2=A0 =C2=A0 =C2=A0- compare current c= ount db to new db before replacing<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-o N=C2=A0 =C2=A0- override $Conf{RefCntF= sck}.<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-p=C2=A0 =C2=A0 =C2=A0- don't show pr= ogress<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-v=C2=A0 =C2=A0 =C2=A0- verbose<br> =C2=A0 =C2=A0 =C2=A0Notes: in case there are legacy (ie: <=3D4.0.0alpha3= ) unapplied poolCntDelta<br> =C2=A0 =C2=A0 =C2=A0files in TopDir/pc/HOST/refCnt then the -f flag is turn= ed on.<br> <br> =C2=A0 =C2=A0BackupPC_refCountUpdate -m [-f] [-p] [-c] [-r N-M] [-s] [-v] [= -P phase]<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-m=C2=A0 =C2=A0 =C2=A0 =C2=A0Updates main= count db, based on each HOST<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-f=C2=A0 =C2=A0 =C2=A0- do an fsck on all= the hosts, ignoring poolCntDelta files,<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 and replacin= g each host's count db.=C2=A0 Will wait for backups<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 to finish if= any are running.<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-F=C2=A0 =C2=A0 =C2=A0- rebuild all the &= gt;=3D4.0 per-backup refCnt files.<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-p=C2=A0 =C2=A0 =C2=A0- don't show pr= ogress<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-c=C2=A0 =C2=A0 =C2=A0- clean pool files<= br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-r N-M - process a subset of the main cou= nt db, 0 <=3D N <=3D M <=3D 255<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-s=C2=A0 =C2=A0 =C2=A0- prints stats<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-v=C2=A0 =C2=A0 =C2=A0- verbose<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-P phase Phase from 0..15 each time we ru= n BackupPC_nightly.=C2=A0 Used<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 to compute e= xact pool size for portions of the pool based<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 on the phase= and $Conf{PoolSizeNightlyUpdatePeriod}.<br> <br> 8<----------------------------------------------------------------------= ----<br> <br> HTH<br> <br> -- <br> <br> 73,<br> Ged.<br> <br> <br> _______________________________________________<br> BackupPC-users mailing list<br> <a href=3D"mailto:[email protected]" target=3D"_blank">B= [email protected]</a><br> List:=C2=A0 =C2=A0 <a href=3D"https://lists.sourceforge.net/lists/listinfo/= backuppc-users" rel=3D"noreferrer" target=3D"_blank">https://lists.sourcefo= rge.net/lists/listinfo/backuppc-users</a><br> Wiki:=C2=A0 =C2=A0 <a href=3D"https://github.com/backuppc/backuppc/wiki" re= l=3D"noreferrer" target=3D"_blank">https://github.com/backuppc/backuppc/wik= i</a><br> Project: <a href=3D"https://backuppc.github.io/backuppc/" rel=3D"noreferrer= " target=3D"_blank">https://backuppc.github.io/backuppc/</a><br> </blockquote></div></div> --00000000000014ca7f06582879a2-- --===============2683405257532668443== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --===============2683405257532668443== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ BackupPC-users mailing list [email protected] List: https://lists.sourceforge.net/lists/listinfo/backuppc-users Wiki: https://github.com/backuppc/backuppc/wiki Project: https://backuppc.github.io/backuppc/ --===============2683405257532668443==--