summaryrefslogtreecommitdiff
path: root/bin/bbackupd
Commit message (Collapse)AuthorAge
* Whitespace, wrapping, comments and dead code cleanups.Chris Wilson2014-08-15
| | | | | | | | Conflicts: bin/bbackupd/BackupDaemon.cpp bin/bbackupd/BackupDaemon.h test/bbackupd/testbbackupd.cpp
* Add message to ClientMarkerNotAsExpected exception.Chris Wilson2014-08-15
| | | | To help with debugging.
* Trailing whitespace fixes.Chris Wilson2014-08-15
| | | | | | Conflicts: bin/bbackupd/BackupClientDirectoryRecord.cpp
* Fix crash uploading empty attributes when directory disappears during scan.Chris Wilson2014-04-26
| | | | | Thanks to Brendon Baumgartner for the report on the mailing list, and for helping to diagnose the problem.
* Restore correct initialisation of mCurrentSyncStartTime.Chris Wilson2014-04-18
| | | | Was accidentally removed by the refactoring of the backup idle loop.
* Eliminate duplicate call to GetCurrentBoxTime().Chris Wilson2014-04-18
|
* Rewrap long lines (whitespace only).Chris Wilson2014-04-18
|
* Stop the CommandSocketPollTimer at end of each backup.Chris Wilson2014-04-18
| | | | | Otherwise it interrupts us needlessly while we're sleeping waiting for the next backup.
* Simplify the sync start logic some more, log when force-sync overrides script.Chris Wilson2014-04-18
|
* Call RunBackgroundTask while scanning directories as well.Chris Wilson2014-04-17
| | | | | Enables bbackupd to be stopped, reloaded or status queried while scanning a large directory.
* Rewrap some lines to reduce unnecessary wrapping.Chris Wilson2014-04-17
|
* Fix warnings about member variables being initialised in a different order.Chris Wilson2014-04-17
|
* Don't consider inode database errors enough reason to run the next backupChris Wilson2014-04-17
| | | | immediately after the end of the current one.
* Rewrite backup idle/poll loop for clarity.Chris Wilson2014-04-17
| | | | | | | | Add helpful debugging messages about why the decision was taken to sleep or start a backup, and how long the system will wait until the next backup. Flatten the code to avoid the double loop.
* Fix BackgroundTask timer being destroyed after timer system cleaned up.Chris Wilson2014-04-17
| | | | Caused an assertion failure and crash.
* Initialise sync flags in WaitOnCommandSocket.Chris Wilson2014-04-12
| | | | Otherwise all callers need to initialise them, or get false positives.
* Poll command socket regularly during file uploads.Chris Wilson2014-04-09
| | | | | Makes the daemon responsive to polling and commands, even during a file upload operation.
* Whitespace, comments and log messages cleanups.Chris Wilson2014-03-02
|
* Make Protocol take control of the socket object passed in.Chris Wilson2014-03-01
| | | | | | | | | | | | | We pass a std::auto_ptr<SocketStream> to every Protocol subclass when we construct it, and it takes control of this object. This reduces the risk of: * accidentally reusing the same SocketStream for multiple Protocols (it happened to me in testbackupstore); * holding onto a reference to the SocketStream; * allowing a locally-scoped SocketStream to go out of scope and be released while still being referenced by a live Protocol.
* Simplify exception handling by using std::auto_ptr.Chris Wilson2014-02-27
| | | | | Will result in the directory automatically being freed, whether or not an exception occurs.
* Fix unnecessarily verbose log message about SyncAllowScript.Chris Wilson2014-02-10
|
* Pass std::auto_ptr objects to Protocol for upload.Chris Wilson2013-08-22
| | | | | | | | | | | Passing raw pointers is bad C++ style, and dangerous, because Protocol will free the passed-in pointers after uploading them, so we should not keep using them. Reduce code duplication in BackupClientDirectoryRecord patch/normal upload. Return a std::auto_ptr<BackupStoreFileEncodeStream> instead of a std::auto_ptr<IOStream> from BackupStoreFile::EncodeFile* functions.
* Use more efficient direct reset of Timers instead of assignment.Chris Wilson2012-11-17
|
* Fix compile failure due to removal of fields from BackupClientContext.Chris Wilson2012-11-08
|
* Replace magic number 1000 with MILLI_SEC_IN_SEC when initialising timers.Chris Wilson2012-11-07
| | | | | Add the start of ExperimentalSnapshotMode support.
* Fix compile error on MSVC due to attempt to convert a std::list::iteratorChris Wilson2012-07-20
| | | | | to a std::vector::iterator.
* Throw an exception if we fail to open inode database, even in release builds.Chris Wilson2012-06-29
|
* Allow BackupDaemon user to reset state for testing.Chris Wilson2012-04-28
|
* Treat corrupt filenames (not decryptable) as not existing, so thatChris Wilson2012-04-15
| | | | | | | | | the client will flag them for deletion, and the store will eventually prune them. We could probably recover better by flagging them for immediate deletion (Remove_ASAP) but this is a better-tested code path. Remove unused variable hasMultipleHardLinks.
* Use C++ string instead of converting to C string and back.Chris Wilson2012-04-15
|
* Fix a memory leak when TcpNice is disabled.Chris Wilson2012-04-11
|
* Improve logging when decrypting a filename fails during UpdateItems().Chris Wilson2012-04-11
|
* Really fix compile error this time.Chris Wilson2012-03-16
|
* Add support for SyncAllowScript to set maximum upload bandwidth dynamically.Chris Wilson2012-03-10
|
* Add experimental "TCP Nice" mode, disabled by default.Chris Wilson2012-02-12
|
* Fix compile error, thanks to James and Buildbot :)Chris Wilson2012-02-02
|
* If a location was not present (on disk) when bbackupd started, don't forgetChris Wilson2012-02-02
| | | | | about it but start backing it up if it appears subsequently.
* Add missing space in log message for readability.Chris Wilson2012-02-02
|
* Allow getting the object ID out from a BackupClientDirectoryRecord.Chris Wilson2012-01-22
|
* Delete any incomplete ID map database that we find, so that we can startChris Wilson2011-10-25
| | | | | | afresh with a new one, should solve most corrupt database errors such as the ones reported by Achim.
* Fix logging of real (non-VSS) paths in UploadFile*.Chris Wilson2011-10-25
|
* Add debug logging for conversion from VSS to real path.Chris Wilson2011-10-24
|
* Convert VSS path to original path for log messages in UpdateItems, toChris Wilson2011-10-11
| | | | | help admins to interpret them.
* Fix excludions on VSS paths by converting back to original namespace beforeChris Wilson2011-10-11
| | | | | checking for them. Also simplifies code.
* Add missing include of <memory> to fix compile.Chris Wilson2011-08-29
|
* Use "more standard" Windows API functions FindFirstFileW and FindNextFileWChris Wilson2011-08-28
| | | | | | | | | | for directory enumeration instead of _wfindfirst and _wfindnext. Ignore reparse points when enumerating directories to avoid infinite loops. Convert VSS paths back to real paths when notifying users about backup progress.
* Fix incorrect "conversion failed" message when logging NULL VSS parameter.Chris Wilson2011-08-28
| | | | | | | Fix log level of VSS component type to TRACE instead of INFO. Fix VSS path generation for absolute paths including drive letters.
* Combine client and server protocols to make way for an offline/local protocol.Chris Wilson2011-08-27
| | | | | Rename ProtocolObject to Message.
* Log the number of files uploaded and directories created, as requested by ↵Chris Wilson2011-08-27
| | | | Achim, closes #61.
* Correct formatting of log message (missing bracket).Chris Wilson2011-08-27
|