Slow cleaning of %windir%\SoftwareDistributon when using ESET AV

Bug #1461282 reported by captaincackle
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
BleachBit
Fix Released
Low
Andrew Ziem

Bug Description

Slow cleaning of %WINDIR%\SoftwareDistributon when using any version of ESET anti-virus or ESET internet security.

This bug occurs with any version of Windows, ie: XP, Vista, 7, 8, 8.1 - 32-bit or 64-bit.

I have tried this on multiple computers using various combinations of Windows and ESET and am always able to reproduce slow cleaning of the SoftwareDistribution folder whenever ESET software is installed.

I have tried the latest stable version of BleachBit and the beta version with the same results. I have also tried fresh installations of BleachBit to ensure my INI file is not corrupt.

Revision history for this message
Andrew Ziem (ahziem1) wrote :

Are you using the option "Windows Update Logs"?

Approximately how many files are there in the folder WINDIR%\SoftwareDistribution? Please give a count for (1) total files and (2) files that are actually deleted.

This will help me diagnose whether this is the same as bug #1265963. (Thank you, ROCKNROLLKID, for suggesting that.)

Changed in bleachbit:
milestone: none → 2.0
Revision history for this message
captaincackle (darael) wrote :

This morning I created a Windows XP virtual machine. But it doesn't really matter which Windows you use, the problem occurs on all versions. I installed all Windows Updates, mostly to build up the SoftwareDistribution folder, but to test on an updated OS.

SoftwareDistribution before cleaning contained 3,255 files and 718 folders with a total size of 1.22 GB.
SoftwareDistribution after cleaning contained 15 files and 11 folders with a total size of 11.3 GB.

The two cleaning filters I chose were "Windows Update Logs" and "Update uninstallers".

BleacBit analysis report:
Disk space to be recovered: 1.66GB
Files to be deleted: 5231
Special operations: 2

I suspect it included other folders such as $xxx in %WINDIR%.

BleacBit cleaning report:
Disk space recovered: 1.66GB
Files deleted: 5232
Special operations: 2

I hope this helps. If you want to view the VM with TeamViewer, you are more than welcome. I have an image before installing ESET and running BleachBit.

Revision history for this message
Andrew Ziem (ahziem1) wrote :

captaincackle: My initial guess was wrong: there were not many files in the folder skipped because of the cleaning rules.

When it cleans many files (like 3,255), about how many minutes does it take?

Is it still slow if you run the cleaning mode a second time (in other words, when there is nothing to clean)?

Note to self, according to previous discussion[1], "Overwrite files" is unchecked in the BleachBit preferences
[1[ http://bleachbit.sourceforge.net/comment/1778#comment-1778

Revision history for this message
captaincackle (darael) wrote :

The speed of cleaning mostly depends on the computer, but i have found to be mostly in the 5 minute region. I usually intervene and delete the files myself because it is so slow.

Revision history for this message
captaincackle (darael) wrote :

It isn't slow the second time because the first cleaning process has delete the files from SoftwareDistribution.

Revision history for this message
Andrew Ziem (ahziem1) wrote :

Most likely it is caused by the same slow matching as bug #1265963. After BleachBit 1.8, I will take a look.

Changed in bleachbit:
milestone: 2.0 → 1.8
milestone: 1.8 → 1.10
Revision history for this message
Andrew Ziem (ahziem1) wrote :

captaincackle: I thought of a test you could run to check whether the issue is inefficient use of the CPU, possibly related to filtering files.

When there are many files to clean, run a preview, so the files are not deleted. Does it still take too long? While it is running a preview, minimize the BleachBit application window, so it is not slowed down by the scrolling.

Also, pull up Windows Task Manager and check the BleachBit CPU usage while the preview is running. Is it using a full CPU? (If you have one CPU in the machine, full CPU usage is 100%. If you have two CPUs, full CPU usage is 50%. Likewise, maxing out one of four CPUs shows as 25%.)

Revision history for this message
captaincackle (darael) wrote :

I have ran the test as asked, both with and without ESET AV installed. In all instances, it uses almost or exactly 50% of the CPU (CPU has 4 cores, however I allowed this VM to use 2 cores and only 2 cores appear in the VM's Task Manager).

This was on a Windows 8.1 x86 installation with the most recent Windows Updates installed

Revision history for this message
Andrew Ziem (ahziem1) wrote :

Thanks for testing. This is consistent with inefficient use of CPU. Later I will try to optimize it.

Andrew Ziem (ahziem1)
tags: added: windows
Revision history for this message
Andrew Ziem (ahziem1) wrote :

While it doesn't address the whole issue, I added an internal benchmark. Then I added a step to pre-compile the regular expressions, which boosted performance 5% on one system and 50% on another.

https://github.com/az0/bleachbit/commit/7ec7374051aea749cdd121e289684c4eecc4d6ab

Changed in bleachbit:
assignee: nobody → Andrew Ziem (ahziem1)
status: New → In Progress
Andrew Ziem (ahziem1)
Changed in bleachbit:
milestone: 1.10 → 1.12
Revision history for this message
ROCKNROLLKID (slinger1410-deactivatedaccount) wrote :

Since the majority was fixed, I gave this a low importance, as I think this issue shouldn't be a "huge" deal anymore.

Changed in bleachbit:
importance: Undecided → Low
Revision history for this message
Andrew Ziem (ahziem1) wrote :

A few weeks ago I submitted BleachBit version 1.10 to ESET for whitelisting. Have you notice any improvement?

Revision history for this message
Andrew Ziem (ahziem1) wrote :

I have not heard back since April 10, so I assumed this is fixed

Changed in bleachbit:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.