| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
| |
When a command fails with an error, and CheckReply throws an exception, the
mStreamsToSend were not deleted.
|
|
|
|
|
|
|
|
|
|
| |
Helps with debugging ConnectionException::Protocol_StreamWhenObjExpected and
ConnectionException::Protocol_ObjWhenStreamExpected errors, which may be caused
by a command returning an error message and failing to consume any uploaded
streams first.
Add extra debugging in ProtocolLocal objects to detect when this happens
during the command itself, which helps with debugging.
|
| |
|
|
|
|
| |
Just like adding a file does.
|
|
|
|
|
| |
Allows creating a directory with a specified modtime (in the parent directory entry).
Tests to come shortly.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
It's much easier to debug these tests if we can step into them.
|
|
|
|
|
|
|
| |
Reading extended attributes may fail with an error if the file was removed
(race condition) or in tests when generating random nonexistent directory
entries. Handle this more gracefully by not backing up the extended attributes
instead of dying completely.
|
| |
|
|
|
|
|
| |
Will result in the directory automatically being freed, whether or not an
exception occurs.
|
|
|
|
|
|
| |
Fix the new tests so that they mostly pass. To squash.
Remove the test for nonexistent GetObject, not implemented yet. To squash.
|
|
|
|
|
|
| |
Rename mrDaemon to mpHousekeeping and make it a pointer, so that it can
officially be NULL, and don't crash if it is, and we fail to get a lock
on the account.
|
| |
|
|
|
|
| |
Was introduced by commit bc8261347880b813af58c4b873e1847cca03778d.
|
| |
|
|
|
|
|
| |
If it fails to clear the reference counts properly, it will leave objects
still existing, and checking the account will reattach them.
|
|
|
|
| |
Fix previous changes by waiting for forked bbstored process during termination.
|
| |
|
| |
|
|
|
|
|
|
| |
Use SETUP macro and tearDown function in tests.
Make tests return bool instead of int, and check it.
|
| |
|
|
|
|
| |
Useful in tests.
|
|
|
|
| |
This reverts commit 59c3fdf8be1def3f237a4b51eb27773b4f42bbcd.
|
|
|
|
|
|
| |
Being able to see the actual and expected values helps with debugging.
More cleanup of comments.
|
| |
|
| |
|
|
|
|
| |
Move ExpectedRefCounts definition to where it's needed.
|
|
|
|
| |
Saves ~2 lines each time it's used. And we use it a lot in testbackupstore.
|
| |
|
|
|
|
| |
Backported from new testbackupstore, to reduce diff.
|
|
|
|
|
|
| |
Will help to ensure that individual test cases run properly, even if a
previous test didn't clear up after itself. Splitting up testbackupstore
into idempotent testcases is coming soon.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
There could be many reasons for this, including an invalid object being
deleted during the previous check run. And it's definitely not serious.
|
|
|
|
|
| |
Also pass the actual reference count of an object to RaidFileWrite instead
of assuming that it's zero, to avoid accidentally deleting a referenced object.
|
|
|
|
|
|
| |
Fix test/common memory leak checks now that MemBlockStream allocates another
block.
|
| |
|
| |
|
|
|
|
| |
Allows aborting tests from any depth of function calls.
|
| |
|
|
|
|
|
|
| |
Useful for sending simple string messages through Protocols or writing them
to streams. Takes a copy of the string, so you don't need to worry about object
lifetime.
|
|
|
|
|
|
|
|
| |
Track them as not leaks, and suppress warnings about realloc() and free() on
these blocks, because they are actually tracked.
Add missing "throw (std::bad_alloc)" to "operator new" to silence warnings
from the llvm compiler.
|
|
|
|
|
| |
Backport a few new functions to simplify tests.
|
|
|
|
| |
Adding and deleting files was not always accounted properly before.
|
| |
|