Commit Graph

4798 Commits

Author SHA1 Message Date
Alec Grieser 1342cc7f48
update generated.go after vexillographer change (docs only) 2019-03-22 13:12:10 -04:00
A.J. Beamon 001fde718c
fix comments to mark things that throw as throwing rather than not throwing
Co-Authored-By: alecgrieser <alloc@apple.com>
2019-03-22 13:04:11 -04:00
Alec Grieser 55a9db1994
spaces to tabs 🤮 2019-03-22 12:58:32 -04:00
A.J. Beamon 67cc274f10
add a missing "is" to parameter description
Co-Authored-By: alecgrieser <alloc@apple.com>
2019-03-22 12:57:01 -04:00
Alec Grieser 4ac3e790ad
modify the reset and timeout option unit tests to handle new on_error cancellation behavior 2019-03-22 12:45:59 -04:00
A.J. Beamon 4eb5715689 Add support for a client or worker having multiple issues. 2019-03-22 08:29:41 -07:00
Jingyu Zhou da338c3ad6 Avoid unnecessary recuriting of DD or RK
While waiting for recruting data distributor or ratekeeper, a previous one
could already joined. So we can skip this unnecessary recruiting.

Revert the change of worker.actor.cpp for ratekeeper. Instead, recruiting
ratekeeper should avoid the process with an existing one. This fixes a bug
where the ratekeeper interface became zombie, killing other healthy ratekeeper
but doing no useful work. Found by:

-r simulation --crash -f tests/fast/WriteDuringRead.txt -s 31858110 -b on
2019-03-21 22:40:07 -07:00
Stephen Atherton cabe7ca844 Stopped using %z to parse timezone offset with strptime() because it only seems to work as expected on MacOS. Updated time input/output unit tests so that they don't assume what the local timezone is. 2019-03-21 19:38:07 -07:00
Stephen Atherton 6c42e42334 Fix compiler complaint about ignored return codes being ignored. Added commented call to testPathOps() for convenience. 2019-03-21 18:05:30 -07:00
Evan Tschannen fe4464e786 fix: processClassFitness could be wrong if the client changed their class while rebooting 2019-03-21 17:56:04 -07:00
Stephen Atherton a6b598f236 Missing include. 2019-03-21 17:51:00 -07:00
Jingyu Zhou 299961aecb Move ratekeeper or data distributor from excluded servers 2019-03-21 17:17:33 -07:00
Stephen Atherton c6d96498ca parentDirectory() is now based on popPath(). Bug fix, abspath() would prepend current working directory even when not resolving symlinks. Added more unit tests. Ported path operation unit tests to fdbmonitor() since the path manipulation function implementations are significantly different. Clarified some comments. The flow project version of abspath() does not allow resolveLinks to be false, for now, because behavior of this on Windows is not well thought out or tested. 2019-03-21 16:56:36 -07:00
A.J. Beamon 12e755114b
whitespace fix in release notes
Co-Authored-By: alecgrieser <alloc@apple.com>
2019-03-21 18:50:49 -04:00
Alec Grieser 64e45e6826
retry limit and max delay transaction options are no longer reset after onError 2019-03-21 18:50:02 -04:00
A.J. Beamon 355f4d5bd1
fix spelling of "depracated"
Co-Authored-By: alecgrieser <alloc@apple.com>
2019-03-21 16:47:57 -04:00
Alec Grieser 22f592ce6e
reset the timeout only if the API version is less than 610 to allow transactions with longer timeouts than the database default 2019-03-21 16:47:12 -04:00
Evan Tschannen 91019712dd
Merge pull request #1341 from etschannen/master
degraded should not be check for roles besides tlogs
2019-03-21 13:33:11 -07:00
Evan Tschannen 3ced178348 maxVersionDifference is a copy of a knob which is a double 2019-03-21 12:58:48 -07:00
Jingyu Zhou 48324ad4be Fix a race during ratekeeper registration
When a ratekeeper registers, the monitorRatekeeper wakes up and recruits a new
ratekeeper. Adding a 0s delay to avoid this.

If a ratekeeper is recruited on an existing machine, update the interface so
that the cluster controller can clear the ratekeeperID.
2019-03-21 12:56:56 -07:00
Alec Grieser 7c8a1c8db7
Revert "start the timeout actor only after the first read to allow transaction timeouts longer than the default db timeout"
This reverts commit df8826115d.
2019-03-21 14:45:43 -04:00
Evan Tschannen c1791cf726 Merge branch 'master' of github.com:apple/foundationdb 2019-03-21 11:25:28 -07:00
Evan Tschannen e692f0f70f fix: degraded is only used for tlog recruitment, so we should not use it in the fitness calculation for other roles 2019-03-21 11:23:49 -07:00
Evan Tschannen 5b8229160c
Merge pull request #1317 from alecgrieser/01186-java-malformed-utf16
Fixes #1186: Tuples: Malformed UTF-16 treated differently in Java and Python
2019-03-21 10:24:44 -07:00
Alec Grieser df8826115d
start the timeout actor only after the first read to allow transaction timeouts longer than the default db timeout 2019-03-21 10:24:02 -04:00
Stephen Atherton 644a88e8b4 Updated fdbmonitor to use modified/minimal implementations of new abspath() and parentDirectory() implementations from flow. 2019-03-20 23:18:30 -07:00
Stephen Atherton bec6f0a37a Added flags to absPath() and parentDirectory() for whether or not symbolic links should be resolved when possible and whether the final resolved path must actually exist on the filesystem. Updated tests, added more cases. 2019-03-20 22:52:47 -07:00
Jingyu Zhou 8edefda193 Fix test stuck due to invalid worker in cluster controller
Test case:
-r simulation --crash -f ./tests/rare/CloggedCycleWithKills.txt -s 688927581 -b off
2019-03-20 22:24:01 -07:00
mpilman 48f3e65bdf Strip debug symbols with `make packages`
When compiling on Linux/MacOS `make packages` will now create
a `lib` and a `bin` directory in the packages directory. In there
it will put stripped versions of all executables and shared
libraries (i.e. the binaries without debug symbols).

If this is run on Linux, it will additionally copy the debug symbols
of all executables into .debug files.
2019-03-20 20:27:10 -07:00
Evan Tschannen c705a1af74 fix: make sure recoveryLocation is always a valid page 2019-03-20 19:33:09 -07:00
Evan Tschannen e837e7572c fix: after a rollback, uncommitted changes to the byte sample could be missed 2019-03-20 19:33:09 -07:00
Evan Tschannen 1c6ad6d307 fix: change the location where stopped is checked, because a yield could cause cause stopped to be set after the existing check 2019-03-20 19:33:09 -07:00
Evan Tschannen 59abd8f3d8 fix: make sure recoveryLocation is always a valid page 2019-03-20 18:12:56 -07:00
Evan Tschannen 3730142fcc fix: after a rollback, uncommitted changes to the byte sample could be missed 2019-03-20 18:10:26 -07:00
Jingyu Zhou 937b6dde31 Fix a race of DD, RK, Master failure
If all DD, RK, Master run on the same process and failed. Recruiting of new
DD or RK could try to use the old master worker interface, which is an invalid
one and causes recruitment to be stuck.

Fix by adding a delay and checking master is valid before recruitment.
2019-03-20 16:19:20 -07:00
Alec Grieser 436c9319ff
Merge pull request #1333 from vishesh/scratch
fix: Use '_' instead of ':' in IPv6 tracefile names
2019-03-20 17:00:43 -06:00
Evan Tschannen 2ed1d58d16 fix: change the location where stopped is checked, because a yield could cause cause stopped to be set after the existing check 2019-03-20 14:28:32 -07:00
A.J. Beamon 18e89b9d42
Merge pull request #1330 from satherton/fix-parsetime-windows
Fix Windows compilation error
2019-03-20 14:27:47 -07:00
A.J. Beamon de83586f64
Merge pull request #1332 from etschannen/feature-huge-arena-logging
added random logging for huge arenas
2019-03-20 14:26:10 -07:00
Jingyu Zhou ce5c6d18d2 Fix ratekeeper recruitment bug 2019-03-20 14:22:22 -07:00
Vishesh Yadav c37291a366 fix: Use '_' instead of ':' in IPv6 tracefile names
':' is not acceptable on Windows. Reason to choose '_' instead of '.'
is to differentiate b/w IPv4 and IPv6 easily, and also '..1' in
filename looks weirder than '__1', which would happen with shortened
IPv6 addresses. And non-shortened IPv6 addreses are just lots of 0s.
2019-03-20 14:00:33 -07:00
Evan Tschannen f73aad863b adding missing logging for 8192 fast allocators 2019-03-20 13:48:45 -07:00
Stephen Atherton ddf25e50ec _get_timezone() was being called incorrectly. Refactored getting / using current timezone offset slightly. 2019-03-20 12:36:08 -07:00
Alex Miller 5d59cfaff3 Use different default port for dev-sandbox
Co-Authored-By: mpilman <markus@pilman.ch>
2019-03-20 12:18:31 -07:00
Andrew Noyes 5e63efd385 Fix typo in comment
Co-Authored-By: mpilman <markus@pilman.ch>
2019-03-20 12:18:31 -07:00
mpilman a0fe00fa8d Add cmake targets to execute local dev instance 2019-03-20 12:18:31 -07:00
Stephen Atherton 22ac25c868 Updated comments for clarity, changed _timezone to _get_timezone() on Windows. Added TODO to eventually use std::get_time() based implementation on all platforms. 2019-03-20 11:53:24 -07:00
Evan Tschannen 70ac5ffda0 added random logging for huge arenas 2019-03-20 11:20:47 -07:00
Alec Grieser fed5a9c0c6
set transaction timeouts and retry limits in the example class scheduling tutorial
Resolves #882: Consider setting timeouts in example code
2019-03-20 11:15:44 -06:00
Alec Grieser 0cec120803
document new database options added in resolution to #775 2019-03-20 11:15:19 -06:00