The support forum

Beta Release 60

Alex Pankratov :

Feb 17, 2014

Summary


1. Significantly reduced run-time memory use
2. Added support for monitoring of the network locations
3. Fixes
4. UI changes
5. Other changes

Alex Pankratov :

Feb 17, 2014

1. Memory usage improvements


One picture is worth a thousand words - http://bvckup2.com/wip/br60-mem-usage-1mil-r2.png - as of this release, once bvckup gets past scanning and planning phases, its memory use is FLAT.

The reason it was *not* flat in previous versions was threefold.

First, it kept logs covering last few backup runs in memory at all times. This was not an issue when backups were small, but it certainly cause the memory use to climb and spike if the per-run changes were in 10s or 100s of thousands. In particular, if there was a weekly backup of an active disk, it would cause memory to climb quite a bit in a course of few weeks. Similarly, if you were to run an initial backup of a million-file backup, it too would push the memory use well over 1 Gig. All because of the logs.

Second, during the backup, the app was needlessly duplicating internal information for newly copied files (but not for updated ones). On initial backup runs, this led to doubling of the memory used for storing file trees. No more.

Third, for larger files, delta copying module was erroneously not flushing processed block hashes. This too is fixed.

All in all, if you run Bvckup and pop open Task Manager or Process Explorer, you should now see its run-time memory usage during a backup wobble within 1 Meg max. And in many cases it won't change at all.

BIG FAT CAVEAT - PLEASE READ


Flattening the memory use required a significant rework of the logging module. This took me over a month and it involved creating fully custom log storage facility. The primary log is still stored as a plain text file, but it is now complimented by an index file that captures the log hierarchy and remembers which branches are opened in the UI and which are collapsed.

The log window in the UI is basically a viewer into a custom hierarchical storage. By collapsing and expanding nodes you toggle the visibility of chunks of the storage. Then, the index file is a heavily optimized custom database that allows for quickly compiling a list of currently visible items starting with specific position, and that also supports efficient recalculation of the visibility tree upon collapsing/expanding of a node. It doesn't sound like much, but it's actually quite complicated (see https://bvckup2.com/wip/27012014 for details).

Think - you are dragging a scroll bar thumb and you expect near-instantaneous response. Even if there are millions of entries. Some of which are hidden. This new logging system supports this.

--

Long story short - there's a LOT of new code. While I have extensively tested it, I am sure I have missed something. If you see this - http://bvckup2.com/beta/files/bad-log.png - just act all normal and let me know :)

Alex Pankratov :

Feb 17, 2014

2. Added support for monitoring of the network locations


This was long due. When the app now includes a simple network share monitor. When a backup fails due to a share being unreachable, the app sets the monitor to track its status and re-runs the backup once the share comes back.

For periodic and real-time backups, the app will now also put them into "Waiting for network location" mode on launch until the location is cleared by the network monitor.

PS. Just remember that you can run any backup at any time with Go button.

Alex Pankratov :

Feb 17, 2014

3. Fixes


1. Fixed an issue with manual file filters being case-sensitive - kudos to Jeff

2. Fixed an issue with archive pruning - kudos to me

3. Fixed an issue with setting file ownership information - kudos to Deipotent

4. Fixed a performance issue with Backup What dialog - Jeff again

5. Fixed several smaller UI issues

6. Switched to showing destination statitics for idle backups - you guessed it, Jeff :)

Alex Pankratov :

Feb 17, 2014

4. UI changes


1. Timestamps are now shown in human-readable format

2. Ctrl-W now exits the app (may be turned off)

3. Ctrl-Wheel now scrolls the log window 10x faster

4. Clicking on systray icon when app's in foreground acts minimizes it

5. Clicking and holding error navigation arrows in the log viewer now auto-hops through the error list, with linear acceleration! - https://bvckup2.com/wip/07022014

6. When error hopping in log viewer, the final item is flashed when reaching the end - https://bvckup2.com/wip/31012014

7. It is now possible to view complete log, and not just the entries from the current app run - http://bvckup2.com/wip/log-options-br60.png

8. Delta-copying progress bar is a bit improved - https://bvckup2.com/wip/17022014 and here's the previous version -  https://bvckup2.com/wip/28112013

Alex Pankratov :

Feb 17, 2014

5. Other changes


1. Changed the location of app's config when it is switched to the service mode to %ProgramData%\Bvckup2

2. Added detection of the maximum supported file size - that is 4GB on FAT systems. The app will now log an error without trying to copy a file when it sees a large file going to destination that doesn't support it.

3. Added support for dedup reparse points - these should've been treated as regular files, but they were simply ignored.

4. Shadow copying now uses "is volume supported" check - a trivial improvement, before attempting to make a VSS snapshot of the source volume, the app now checks if volume is supported by VSS. If it's not, it logs something to that extent. This should hopefully clarify matters in cases when source is a FAT system and such.

5. When copying, file sharing mode can now be specified - this is a configuration file option (not available through UI). It is now possible to force delta copier to open source and destination files with an arbitrary combination of ShareRead/Write/Delete flags. The default is ShareRead/Write for source and ShareRead - for destination.

6. Delta copier can now be told to ignore timestamp changes - this is even more niche feature. It's there just in case.

7. App's own configuration folder is now always excluded when the source is scanned

Alex Pankratov :

Feb 17, 2014

Addendum

Pardon the typos.

jrothlis :

Feb 18, 2014

Wow, you *have* been busy!

Alex Pankratov :

Feb 18, 2014

Yeah, you don't say :)

I actually don't like making large releases, I much prefer keeping them smaller and more frequent, but this logging rework was just too damn big to fit into 2-3 weeks schedule.

Radjin :

Feb 18, 2014

The update for network drive monitoring works perfectly, thanks.

PeteZ :

Feb 18, 2014

Re: Other changes #4

Shadow copying now reports "not supported" on all backup sets that are set to "Use if available" or "Required." This worked until updating to B60, but now those sets report an error.

OS: XP Pro

Alex Pankratov :

Feb 18, 2014

Aye, I can reproduce this. This is due to that newly added check for whether a volume is supported by VSS ... using documented VSS function. Seems like it's either not supported on XP or just borken. I'll take it back out.

Alex Pankratov :

Feb 18, 2014

Alright, this will be resolved in Beta 61, which should be out in a bit.

Meanwhile, the workaround is to exit the app and then delete file "bvckup2_vss_xp.dll" form bvckup2.exe's directory. This DLL provides VSS functionality to Bvckup2 on XP. The cause of the problem is that Beta 60 comes with a new version of this DLL, but it doesn't use it if there's an existing .dll in place. So just remove it.

New topic

Create
Made by IO Bureau in Switzerland
Support

Updates
Blog / RSS
Follow Twitter
Reddit
Miscellanea Press kit
Testimonials
Company Imprint

Legal Terms
Privacy