[Box Backup-commit] [boxbackup/boxbackup] 984ac1: Backport whitespace and comment fixes from s3_supp...

GitHub noreply at github.com
Fri Nov 10 21:05:34 GMT 2017


  Branch: refs/heads/s3_support
  Home:   https://github.com/boxbackup/boxbackup
  Commit: 984ac16b57e972bb8f00c9523bf13ab75199a841
      https://github.com/boxbackup/boxbackup/commit/984ac16b57e972bb8f00c9523bf13ab75199a841
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M LICENSE.txt
    M lib/backupstore/BackupAccountControl.cpp
    M lib/backupstore/BackupFileSystem.cpp
    M lib/backupstore/BackupFileSystem.h
    M lib/backupstore/BackupStoreCheck.cpp
    M lib/backupstore/BackupStoreContext.cpp
    M lib/backupstore/HousekeepStoreAccount.cpp
    M lib/backupstore/StoreTestUtils.cpp
    M lib/backupstore/StoreTestUtils.h
    M lib/bbackupd/BackupClientContext.cpp
    M lib/bbstored/BBStoreDHousekeeping.cpp
    M lib/common/DebugMemLeakFinder.cpp
    M lib/common/Utils.cpp
    M lib/common/Utils.h
    M lib/httpserver/HTTPQueryDecoder.cpp
    M lib/httpserver/S3Client.cpp
    M lib/httpserver/S3Simulator.cpp
    M lib/server/makeprotocol.pl.in
    M runtest.pl.in
    M test/backupstore/testbackupstore.cpp
    M test/backupstorepatch/testbackupstorepatch.cpp

  Log Message:
  -----------
  Backport whitespace and comment fixes from s3_support_merge


  Commit: 00f8eba71d7cf9b0f664bd5d00b92b35a423d864
      https://github.com/boxbackup/boxbackup/commit/00f8eba71d7cf9b0f664bd5d00b92b35a423d864
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M test/httpserver/testhttpserver.cpp

  Log Message:
  -----------
  Test that 100-continue headers are sent and received correctly

This tests that HTTPRequest::SendHeaders includes the "Expect: 100-continue"
header only when expected. A separate test calls HTTPRequest::SendWithStream
which sends these headers, and therefore checks that both sides correctly
handle such exchanges.

(cherry picked from commit 5fad0fd1cb9a1a39756de69ce9348ca692e35bda)


  Commit: dd17f6fb95c0d3a4904c4bbffd16219ef8c60104
      https://github.com/boxbackup/boxbackup/commit/dd17f6fb95c0d3a4904c4bbffd16219ef8c60104
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/common/DebugMemLeakFinder.cpp
    M lib/common/MemLeakFinder.h

  Log Message:
  -----------
  Implement placement operator delete

"If the object is being created as part of a new expression, and an exception
is thrown, the object’s memory is deallocated by calling the appropriate
deallocation function. If the object is being created with a placement new
operator, the corresponding placement delete operator is called—that is, the
delete function that takes the same additional parameters as the placement new
operator. If no matching placement delete is found, no deallocation takes
place."

So to avoid memory leaks, we need to implement placement delete operators that
correspond to our placement new, which we use for leak detection (ironically)
in debug builds.

(cherry picked from commit 40cf96207139a31466b98a93298cef4f436eea6b)


  Commit: 49f07f0c6755071bac05536b48ae0c2a45b1ec8c
      https://github.com/boxbackup/boxbackup/commit/49f07f0c6755071bac05536b48ae0c2a45b1ec8c
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/backupstore/BackupCommands.cpp
    M lib/backupstore/StoreTestUtils.cpp
    M lib/httpserver/S3Client.cpp
    M test/backupstore/testbackupstore.cpp

  Log Message:
  -----------
  Fix a long-standing bug in the set_refcount() test helper function

Previously it would truncate the expected refcount list at the first zero entry,
instead of just removing zero entries from the end.

Also move some test code to test_server_commands which should have been there,
since they were causing issues with the check for the refcount database in
test_server_housekeeping. It's hard to disentangle these two changes.

Also disconnect from the HTTP server in S3Client if we receive an exception on
reading, since the connection is no longer known to be in a clean state.

(cherry picked from commit 0ab2508cfd01a32dc39ce689d5b6b7e58a460e38)
(cherry picked from commit b91cdf14c5459f03076ee3668ef4a9c2b78f2227)


  Commit: aae37f77def4a369d394439c35dad895e4339abc
      https://github.com/boxbackup/boxbackup/commit/aae37f77def4a369d394439c35dad895e4339abc
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/backupstore/BackupFileSystem.cpp

  Log Message:
  -----------
  Fix rare crash while tearing down S3BackupFileSystem

ReleaseLock() could fail if it can't contact the S3/SimpleDB server, but
destructors aren't allowed to throw exceptions, so catch this case and log
a warning instead (because we failed to release the lock that we were
holding).


  Commit: 77b06a16ebeadc88e77f71dde727bbee5308db88
      https://github.com/boxbackup/boxbackup/commit/77b06a16ebeadc88e77f71dde727bbee5308db88
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/server/ServerStream.h

  Log Message:
  -----------
  Improve exception handling in single-process servers

Don't allow an uncaught exception to kill the whole server. This makes it
consistent with multi-process servers, where death of a child worker does
not stop the main server process, so it continues to serve requests.

This makes the HTTPServer robust to exceptions (such as the child
disconnecting while the server is streaming a response) on Windows.


  Commit: 0d9239ef206cb35b1d4bbe15532ce8c91f3ddf00
      https://github.com/boxbackup/boxbackup/commit/0d9239ef206cb35b1d4bbe15532ce8c91f3ddf00
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/win32/emu.cpp

  Log Message:
  -----------
  Windows syslog() emulation: improve error messages

If syslog can't log to the Windows event log for some reason, instead of
just printing the log message to the console, include some explanatory
text about what went wrong.


  Commit: 3a8ca0c97e7346912889df72a1a87b80b430fe7a
      https://github.com/boxbackup/boxbackup/commit/3a8ca0c97e7346912889df72a1a87b80b430fe7a
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M infrastructure/buildenv-testmain-template.cpp

  Log Message:
  -----------
  Completely disable syslog logging in tests


  Commit: e41e27dfdaeccdd68c316bd94837d2c81ba3eb98
      https://github.com/boxbackup/boxbackup/commit/e41e27dfdaeccdd68c316bd94837d2c81ba3eb98
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/common/Logging.cpp
    M lib/common/Logging.h

  Log Message:
  -----------
  Enable overriding log level by category as well as filename

This extends the -L command-line option to allow overriding by
filename/category=level as well as the existing support for overriding by
filename=level.


  Commit: f70104ba39cf33b714aad5407583edee884cac6a
      https://github.com/boxbackup/boxbackup/commit/f70104ba39cf33b714aad5407583edee884cac6a
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/server/SocketStream.cpp

  Log Message:
  -----------
  SocketStream: use THROW_SOCKET_ERROR for better messages on Windows


  Commit: ea5d3d446527f5de2a32cacc35fb5bb6aa363822
      https://github.com/boxbackup/boxbackup/commit/ea5d3d446527f5de2a32cacc35fb5bb6aa363822
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/httpserver/S3Client.h

  Log Message:
  -----------
  Increase timeouts in S3Client to help with debugging


  Commit: 93d509f40d9260c494299f989d480876102721bc
      https://github.com/boxbackup/boxbackup/commit/93d509f40d9260c494299f989d480876102721bc
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/httpserver/S3Simulator.cpp

  Log Message:
  -----------
  S3Simulator: add some TRACE logging to help debug 100-continue responses


  Commit: 407ec52d3e0958ee5dafd6b4e357878894e20b0d
      https://github.com/boxbackup/boxbackup/commit/407ec52d3e0958ee5dafd6b4e357878894e20b0d
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/server/ServerStream.h
    M test/backupstore/testbackupstore.cpp

  Log Message:
  -----------
  ServerStream and test/backupstore: improve comments slightly


  Commit: f8255bb378132167fb1ab333d31ef757e7cbad09
      https://github.com/boxbackup/boxbackup/commit/f8255bb378132167fb1ab333d31ef757e7cbad09
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/backupstore/BackupStoreContext.cpp
    M lib/bbstored/BBStoreDHousekeeping.cpp
    M lib/bbstored/BackupStoreDaemon.cpp
    M lib/server/Daemon.cpp
    M lib/server/Daemon.h
    M lib/server/ServerStream.h

  Log Message:
  -----------
  Clear up Daemon command-line arguments -D and -F

By separating their roles (which used to overlap) it's now possible to run a
forking server in the foreground, or a non-forking daemon in the background,
which can be useful for debugging (for example, to more closely simulate how
test daemons work on Windows when running on Unix). -DF is now needed to
have a non-forking server in the foreground.


  Commit: 94ca16a81a16d011cb47b03649b03a83b4358db6
      https://github.com/boxbackup/boxbackup/commit/94ca16a81a16d011cb47b03649b03a83b4358db6
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/httpserver/SimpleDBClient.h

  Log Message:
  -----------
  Fix SimpleDB timeouts: should be in milliseconds, not seconds


  Commit: e30296a258318633d0ed7490a1add28c6f1ab972
      https://github.com/boxbackup/boxbackup/commit/e30296a258318633d0ed7490a1add28c6f1ab972
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2017-11-10 (Fri, 10 Nov 2017)

  Changed paths:
    M lib/common/DebugMemLeakFinder.cpp

  Log Message:
  -----------
  Store and log full stack traces for leaked memory allocations

Don't dump stack backtrace when logging memory leaks to a file

Since the backtrace goes to the console instead, it's confusing to have them in
different places.

(cherry picked from commit 6e7df4dfdc06eaff2dd0ef51741df3cf6ba319ea)
(cherry picked from commit 270cd1f16fa8a32b07ae0b9762a417db7b95b82f)
(cherry picked from commit c627e9547fb8a191ea36780b140fd0516a0bffa8)
(cherry picked from commit 336859cb7f499300d4b6e0b6bcd18e275a1f0043)


Compare: https://github.com/boxbackup/boxbackup/compare/b5ac33aceaeb...e30296a25831


More information about the Boxbackup-commit mailing list