Bvckup 2

Discussion in 'backup, imaging & disk mgmt' started by angstrom, Jul 7, 2014.

  1. guest

    guest Guest

    Bvckup 2 v79.15 Released (December 12, 2018)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.15

    Added an option for quickly reloading a backup job via the right-
    click menu. This is an advanced option so it requires holding Ctrl
    down when opening a menu - https://bvckup2.com/wip/12122018

    This option is meant specifically for re-reading job settings after
    applying a manual override. Previously this required a program
    restart. Now it doesn't, so - a progress.

    It is also now possible to reload a job using external command-l
    line control, which compliments nicely already present "load"
    and "unload" commands.

    ⦁ Added human-friendly description for ERROR_FILE_CORRUPT and
    ERROR_DISK_CORRUPT errors. The program will also log an advice
    to check disk for mark-up and hardware errors as soon as possible.

    ⦁ Added an option for automatically re-activating a license when the
    installation fingerprint changes. Details are available on as-needed
    basis.

    ⦁ Changed scan thread count to be an option tied to the source and
    destination instead of being specified for local/remote location types.

    ⦁ Changed the run counter used for the %RUN#...% variable to *not*
    include backup runs that produced no changes.

    As per - https://bvckup2.com/support/forum/topic/1135
    See https://bvckup2.com/support/forum/topic/1091 for the context.

    ⦁ Changed "Create Backup" flow to allow destination folder to be a
    subfolder of the source, with a warning. Previously this was only
    allowed if destination was the OneDrive folder, and it was flat out
    disallowed in earlier releases.

    ⦁ Fixed an issue with delayed display of the copying progress.
    As per - https://bvckup2.com/support/forum/topic/1132

    The root cause was that the service and UI processes have their own
    microsecond-resolution clocks that are used for high-prevision things
    such as IO timers and some such. These clocks are started when the
    process starts, so in service mode they end up being offset relative to
    each other (because the UI typically starts some time after the service).

    So what happened is that the start time of current backup step was
    recorded by the engine using this clock rather than the system clock.
    It then passed it to the UI for display, but on UI's scale it was offset
    and appeared in the future => hence the delay.

    ⦁ Fixed an issue handling out-of-disk-space condition when saving
    destination snapshot at the end of a backup run.
     
  2. guest

    guest Guest

    Bvckup 2 v79.16 Released (December 21, 2018)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.16

    ⦁ Resolved an issue with bvckup2.exe starting to eat ~10% of CPU once
    machine's uptime goes over 49 days.

    This was a good one.

    For internal housekeeping tasks the engine uses a millisecond
    resolution clock that is stored as 64 bits. This is plenty enough
    for storing milliseconds, but there was one place in the code that
    treated it as 32-bit.

    The problem was with the code that scheduled timers. You tell it
    that in X ms you want a callback, and it gives you a callback around
    that time. Timers.

    This code sorts all scheduled timers into logarithmicaly-spaced
    buckets similar to "timer wheels" as used in the Linux kernel [2].

    The problem was with a bit of code that determined how far out the
    next timer was from _now_. It erroneously treated milliseconds as
    a 32-bit value, so after (2^32/1000/60/60/24) days of uptime this
    code invariably decided that the next time was already past due.

    This caused the main loop in the engine to spin without sleeping
    and that led to elevated idle CPU usage.

    BUT. You are rightfully thinking - how come this only affects 79.15?

    Excellent question. Prior to this release RDTSC value was offset so
    that it would read 0 at the moment of _program_ launch. This meant
    that the 10% CPU issue was still there, but it didn't manifest itself
    until the _program_ was up for 50 days. This is not a common case,
    so the whole issue remained unnoticed since... well... pretty much
    version 0.1.

    Then, in 79.15 this RDTSC offset was removed to sync internal clocks
    between the engine and the UI. This resolved the first "Fixed" entry
    on 79.15 change log, but it also pushed the CPU issue into the
    spotlight as there *is* a fair number of boxes with good uptime.

    All in all though, it's all compiler's fault. Entirely.

    [1] https://en.wikipedia.org/wiki/Time_Stamp_Counter
    [2] https://lkml.org/lkml/2005/10/19/46

    ⦁ Resolved an issue with backup jobs auto-disabling themselves. In
    particular this happened when the program was running in service
    mode *and* if the UI was not launched within first 30 minutes from
    the service launch.

    Again, this was specific to 79.15 because it included a rework of the
    UI-to-engine communication protocol. One part of the change had to
    do with verifying program's self-consistency and one of the checks
    failed if the UI wasn't present. This led to the program entering a
    "safe mode" of sorts when it disabled a backup job after a run as a
    precaution.

    ⦁ It's now possible to use $QUOTE in job's description to have it
    expanded into job's custom queue name if there's one set. This is
    related to https://bvckup2.com/support/forum/topic/934

    The same change also adds BVCKUP_queue env. var to the pre/post
    commands and email alert templates.
     
  3. guest

    guest Guest

    Bvckup 2 v79.17 Released (December 29, 2018)
    Website / Download: https://bvckup2.com/update
    Release Notes
     
  4. guest

    guest Guest

    Bvckup 2 v79.18 Released (January 14, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.18

    ⦁ New storage devices, volumes and drives monitoring module.
    See here for details - https://bvckup2.com/wip/14012019

    ⦁ New power events monitoring module. In particular, it now uses
    native service notifications for receiving power events when the
    program is running in service mode.

    Previously, the engine relied on windows messages for that, which
    required creating an invisible (dummy) window and this sometimes
    failed - seemingly randomly, but exclusively on Windows Server
    machines.

    ⦁ Tentative fix for staged copying conflicting with an obscure Windows
    feature called "file tunneling":

    https://blogs.msdn.microsoft.com/oldnewthing/20050715-14/?p=34923

    More specifically, when set to copy files in full (and when copying files
    smaller than the delta copying threshold) the engine defaults to
    using so-called "staged copying". That is, it would copy the file into a
    temp file first and then rename it in place, overwriting an older copy
    if one exists.

    The fix is in response to the report that described "created" time on
    a backup copy somehow getting out of sync with the source, even
    though the timestamps sync completes without errors. The fix is
    _tentative_ because file tunneling is the only plausible explanation
    for this lovely behavior, and because the report came in late in the
    release cycle.

    ⦁ Resolved an issue with erroneously suppressing copying of "created"
    timestamps when a quirky Synology volume is detected at _source_
    location.

    As per - https://bvckup2.com/support/forum/topic/1151
     
    Last edited by a moderator: Jan 16, 2019
  5. guest

    guest Guest

    Bvckup 2 v79.19 Released (January 23, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
     
  6. guest

    guest Guest

    Bvckup 2 v79.20 Released (February 4, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.20

    ⦁ Reworked monitoring of mapped network drives.

    First, drives that appear offline after program's start, but can be
    "resuscitated" with Windows' help are now correctly recognized as
    online after connection is re-established. This bit got broken in
    79.18 with introduction of the new storage tracking module.

    Kudos to Greg for reporting the issue and helping with isolating it.

    Second, the engine now also detects network drives going offline,
    which is something it didn't do before at all.

    ⦁ Reworked reporting of ini/override warnings.

    In particular, this relates to reporting bad override entries on job's
    reload. As of this release, the engine tracks which configuration
    setting was picked up from which INI file and it will report this file
    when logging an INI warning.

    Kudos to Martin for running into this -
    https://bvckup2.com/support/forum/topic/971/6386

    ⦁ Added workaround for buggy SD card readers.

    SD card readers of certain vendor will for reasons unknown sometimes
    report that "the volume is not ready" when the volume is in fact A-OK.
    In other times they would refuse to report drive's geometry or partition
    information. The program can now tolerate this eccentric behavior.

    ⦁ Added workaround for strange 'sparse reparse' points.

    This is second workaround for an issue with bizarre reparse points
    surfacing in C:\Windows folder, always somehow attached to Sparse
    files. See https://bvckup2.com/support/forum/topic/1116 for details.

    The workaround itself is to treat a reparse point as a regular file IF
    its reparse tag is less than 0x00100000 (hex) and if it has a Sparse
    attribute set. This can be disable in job's settings if needed.

    ⦁ Cosmetic changes to the logs - tidied up messages here and there,
    removed extraneous line breaks, etc.
     
  7. guest

    guest Guest

    Bvckup 2 v79.21 Released (February 19, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
     
  8. guest

    guest Guest

    Bvckup 2 v79.21.2 Released (February 21, 2019)
     
  9. guest

    guest Guest

    Bvckup 2 v79.22 Released (March 4, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.22

    ⦁ Added check to detect dead symlinks during the scan as per - https://bvckup2.com/support/forum/topic/1162

    ⦁ Added an alternative warning for when creating a new backup job that
    points at existing non-empty destination folder AND when "Deleting"
    option is changed to "Keep backup copies":
    https://bvckup2.com/support/data/destination-exists-warning-alt.png

    Same warning, with "Deleting" left at its default "Archive" setting:
    https://bvckup2.com/support/data/destination-exists-warning.png

    ⦁ Resolved an issue with internal delta state clean up. This is referring to
    the removal of block-hash state files after respective source file is either
    deleted or shrunk down to no longer qualify for delta copying.

    ⦁ Resolved an issue with updating empty files when a System attribute is set on their backup copy.

    Previously this would fail with "Access denied" error due to a certain
    (rather obscure) provision in the file system API. With this release
    Bvckup2 will clear this attribute off the backup copy prior to updating
    it. This is an extension to an existing mechanism that clears ReadOnly
    and Hidden attributes, so the program now basically checks if any of
    these three attributes are set on the backup copy and clears them if
    they are.

    ⦁ Further UI improvements to double-buffered control rendering.
     
  10. Hadron

    Hadron Registered Member

    Joined:
    Apr 1, 2014
    Posts:
    2,138
    How do you avoid backups clashing at the same time?
    How does Bvckup2 handle it?
     
  11. TheRollbackFrog

    TheRollbackFrog Imaging Specialist

    Joined:
    Mar 1, 2011
    Posts:
    4,954
    Location:
    The Pond - USA
    I'm not sure what you mean by "clashing" but Bvckup2 has a completely parallel architecture allowing multiple backups to occur simultaneously. There is an option you may set to allow "single streaming" to occur... basically one operation at a time when multiples are simultaneously scheduled.
     
  12. TheRollbackFrog

    TheRollbackFrog Imaging Specialist

    Joined:
    Mar 1, 2011
    Posts:
    4,954
    Location:
    The Pond - USA
    Bvckup2 offers that option as lots of simultaneous backups can possibly eat up quite a bit of your disk to disk hardware bandwidth, which may affect your System interactively while you are trying to use it during that time. It's a very efficient program using your System's I/O capability... getting the most out of your hardware subsystems.
     
  13. guest

    guest Guest

    Bvckup 2 v79.23 Released (April 3, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.23

    Reworked the program mode switching process.

    Read all about it here - https://bvckup2.com/wip/29032019

    ⦁ Reworked storage monitoring to be asynchronous. The initial scan of
    the storage stack is still done synchronously (that is, the program
    waits for it to complete before continuing with its initialization), but
    all subsequent updates in response to device/volume activity is now
    done asynchronously, in the background.

    The main reason for the change is that despite all the efforts to avoid
    making any blocking or slow requests, there are still cases when even
    the most trivial request may take several seconds to complete. This
    includes cases of not fully spun up HDDs, dying drives that are still
    unsure if they want to die completely or not, etc.

    ⦁ Added support for requerying faulty storage volumes. This is related
    to the previous change. Apparently there exist device/drive combos
    that announce arrivals of new storage volumes before these volumes
    are actually operational. So if the program attempts to query basic
    volume details _immediately_ after its alleged arrival, there are cases
    when this request will fail.

    Previously, a volume like this was assumed to be faulty and ignored.
    So any jobs bound to this volume remained in "Waiting for device"
    state and didn't get to run.

    With this change, the program will try and re-query the volume once,
    in 5 seconds after the original attempt. If this too fails, only then the
    volume will be marked as broken and ignored.

    ⦁ Added support for verifying file size after copying. With this release
    the copying module will check if the resulting size of a backup copy
    as reported by the file system matches up with the expectation.

    This is added for one very specific case - for FAT volumes (not FAT32
    or ExFAT, just plain FAT) that accessed remotely, through Samba.
    Apparently in this case it's possible to create a file larger than 4 GB
    in size, with all writes completing successfully, but the resulting file
    size will be 0. This is some issue with Samba/FAT combination, so
    this check is basically meant to detect this combo and warn about it.

    ⦁ Resolved an issue with the storage monitoring module. The size of
    the storage stack information was growing by 20 bytes per device,
    per rescan due to cross-references between devices and volumes
    not being cleared correctly.

    This is obviously not a big problem unless there's a lot rescanning
    going on... which is exactly what happened in one reported case,
    where a dying flash drive was repeatedly generating "physical
    layout changed" events. This caused the stack information size
    swell in size, eventually growing over the maximum size of the
    UI-to-engine protocol message... which triggered an internal sanity
    check in the code and shut down the program.

    In good news, that sanity check worked as designed.

    ⦁ Resolved an issue with scanning errors of the top folder - that is, if
    the program ran into a _retryable_ error when just starting to scan
    either the source or destination folder, the retrying didn't work as
    expected. Fixed now.

    ⦁ Resolved an issue with the About window - in some cases it would
    show an "action" button, i.e. "Reactivate", partly off the screen and
    have a problem with showing the right license status.
     
  14. guest

    guest Guest

    Bvckup 2 v79.23.1 Released (April 4, 2019)
    Website / Download: https://bvckup2.com/update
    - changelog for this version not available -
     
  15. angstrom

    angstrom Registered Member

    Joined:
    Oct 27, 2013
    Posts:
    126
    Location:
    Switzerland
  16. guest

    guest Guest

    Bvckup 2 v79.24 Released (April 10, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.24

    Enabled collection of the device health data.

    The storage monitoring module now queries SMART/NVMe health
    data from local storage device, if possible.

    When the program starts up, it first does a quick device scan just to
    collate basic device information. This scan is done synchronously -
    the backup engine waits for it to be completed before entering
    the "running" state.

    Then, once started, the engine then polls devices for their SMART
    data and this is done asynchronously, in the background, because
    retrieving this data can be slow and it may also require spinning up
    the drives (in theory it shouldn't, in practice - sometimes it does).

    After that it will also query SMART data from new devices that get
    plugged into the machine. This too is done asynchronously.

    SMART data is not (yet) refreshed periodically, so this version does
    not _monitor_ SMART status per se. Nor does it actually report it
    through the UI. Health status of the devices is logged in the storage
    log and the summary of it is also logged in the central program log.

    The main goal behind this change is to complete gradual roll-out of
    the new storage module and evaluate it against larger installation
    base:

    79.18 introduced the new storage monitoring module, sans SMART.
    79.23 switched the module to use asynchronous scanning.
    79.24 enabled the gathering of the SMART data.

    If all goes well (it should), the next step will be the tracking of SMART
    data over time and integration into the UI as a first-class feature.

    ⦁ Reworked the handling of faulty storage volumes - this has to do with
    how the engine deals with volumes that can't be queried for their
    basic information.

    79.23 introduced a single re-query attempt under certain conditions,
    but these conditions proved to be incorrect and sometimes caused
    the volumes to be re-queried perpetually, in 5 second intervals.

    ⦁ Cleaned up storage module logging - it's just marginally better
    looking and a bit more pleasant to read... if that's your thing.

    ⦁ Resolved an issue with the storage module - in certain cases the
    volume extent information (offset/size) were recorded incorrectly,
    which caused the tracking ID of respective device to become ill-
    formed, throwing off device tracking. This should be fixed now.

    ⦁ Resolved an issue with UI transitions - in certain cases the UI would
    erroneously trip an internal self-consistency check when validating
    the layout of a window after it was transformed from one state to
    another. This affected More options" page of Backup Settings,
    "Device Tracking" and "How To Send" dialogs.
     
  17. guest

    guest Guest

    Bvckup 2 v79.25 Released (May 9, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.25

    ⦁ Support for indicating rudely interrupted backups - that is showing if a
    backup run was aborted part-way through because Bvckup 2 process
    terminated unexpectedly. Details - https://bvckup2.com/wip/30042019

    ⦁ Support for not logging suppressed delete operations.

    As per - https://bvckup2.com/support/forum/topic/436/6504

    Previously, if a backup job was set to "Keep backup copies of items
    deleted at source", then it would still emit a log entry for each delete
    operation that was planned, but ultimately suppressed.

    With this release these delete operations are logged only if there's
    a non-delete operation that depends on them.

    For example, if a file called "abc" was replaced with a folder called
    "abc", then backing up this change requires first deleting the backup
    copy of abc-the-file. Since this is disallowed, the folder cannot be
    created and so the file-delete operation *is* logged to establish the
    context for folder-create failure. Edge cases, gotta love them.

    ⦁ Resolved an issue with the file move detection logic. In particular,
    if a symbolic link was replaced by a file with the same name, this
    caused the planning module to first emit delete-link, create-file
    operations, which were then erroneously coalesced into a move-file
    that was, ultimately, tried to rename file into itself and that triggered
    a self-consistency check in the backup engine when it was trying to
    execute this nonsense.
     
  18. Hadron

    Hadron Registered Member

    Joined:
    Apr 1, 2014
    Posts:
    2,138
    :thumb:
     
  19. guest

    guest Guest

    Bvckup 2 v79.26 Released (June 5, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.25

    ⦁ Added detection of corrupted and rapidly changing files. Read all about
    it here -

    https://bvckup2.com/wip/04062019

    ⦁ Added support for "vertically maximized" window state - that's the case
    when you double-click on the top or bottom of the window frame and it
    gets stretched out vertically to the max. With this release opening and
    closing Log Panel now works just like it does if the window was properly
    maximized.

    ⦁ Cleaned up error reporting a bit - sometimes the log needs to record
    a failed condition rather than a query (that may fail in a variety of ways).
    Prior to this release these failures were recorded with a fake error code
    of 12345, i.e. it would say "VssIsOkToContinue() failed with 12345".

    This nonsense is no more. It will now simply say "Xyz() failed".

    ⦁ Upgraded the toolchain used for assembling the program. Moved
    from v120_xp platform toolset to v140_xp, which largely means
    using a newer (and possibly better) compiler and a new version of
    the C run-time library.

    Incidentally, the latter also caused program's EXE to swell by almost
    40KB just because. On the plus side, this helped fishing out a couple
    of smaller typos with log formatting... Still, at 20K in binary code per
    typo it's a bit steep.
     
  20. guest

    guest Guest

    Bvckup 2 v79.26.1 Released (June 5, 2019)
     
  21. guest

    guest Guest

    Bvckup 2 v79.27 Released (June 8, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 79.27

    ⦁ Resolved an issue with the program failing to initialize its window at
    launch (and complaining that something went wrong). This was due
    to support for "vertically maximized" window state that was added
    in the previous release.

    This state is not officially documented, so detecting it was based on
    heuristics, which proved to be insufficiently strict and prone to false
    positives on certain Windows 10 builds.

    Fixed these to be far more conservative.

    ⦁ Resolved an issue with the diagnostic console caused by the switch
    to the new platform toolchain, again in the previous build.
     
  22. guest

    guest Guest

    Bvckup 2 v80.1 Released (June 17, 2019)
    Website / Download: https://bvckup2.com/update
    Release Notes
    Release 80.1
    ⦁ Reworked how verbose file and folder exclusions work

    Starting with R80 explicitly excluding a folder in Backup What window
    of backup settings now unconditionally takes all folder contents out of
    backup, with no other "include" rules being applied to it.

    See this post for details - https://bvckup2.com/wip/11062019

    ⦁ Updated the logo

    See this post for details - https://bvckup2.com/wip/06062019

    ⦁ Reworked check-for-updates mechanism for better clarity

    See this post for details - https://bvckup2.com/wip/13062019
     
  23. EASTER

    EASTER Registered Member

    Joined:
    Jul 28, 2007
    Posts:
    11,126
    Location:
    U.S.A. (South)
    Pretty good program :thumb:
     
  24. angstrom

    angstrom Registered Member

    Joined:
    Oct 27, 2013
    Posts:
    126
    Location:
    Switzerland
    Glad you like it :)
     
  25. matra

    matra Registered Member

    Joined:
    Aug 3, 2013
    Posts:
    40
    Location:
    Germany
    I have just bought a second license. This time Pro;)
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.