Commit Graph

586 Commits

Author SHA1 Message Date
Balachandar Namasivayam 312f614133 Add the new ops and AND to NON_ASSOCIATIVE_MASK.
In the storage server, read the entire value if the op is ByteMin or ByteMax.
2017-10-16 11:06:31 -07:00
Alec Grieser e0be1ef1e0 Merge branch 'release-5.0' 2017-10-16 10:08:11 -07:00
Alec Grieser 432726ba2d Merge branch 'release-4.6' into release-5.0 2017-10-16 09:54:21 -07:00
Alec Grieser d40eb1ef9a changed java package from com.apple.cie.foundationdb to com.apple.foundationdb 2017-10-16 08:31:44 -07:00
Alec Grieser 18432f235f moved java files from com/apple/apple/foundationdbdb to com/apple/foundationdb in preparation for package rename 2017-10-16 08:11:41 -07:00
Stephen Atherton 68eccb681e Merge pull request #173 from bmuppana/master
Backup log messages.
2017-10-13 18:31:53 -07:00
Evan Tschannen 1f90a27acf Merge pull request #174 from bmuppana/fix-windows
Fixing windows build. Fixing backup.actor.cpp
2017-10-13 17:43:56 -07:00
Bhaskar Muppana 36b15f029d Fixing windows build. Fixing backup.actor.cpp 2017-10-13 17:41:17 -07:00
Evan Tschannen 215bcb8d3e Merge pull request #157 from cie/choose-leader-on-stateless-processes
Catch and update processClass change from DBSource
2017-10-13 14:03:29 -07:00
Yichi Chiang 5bcdd37c0d Move UID generation and add initialClass 2017-10-13 13:46:37 -07:00
Alvin Moore b075fb30a0 Merge branch 'release-5.0'
Removed TLS from repository and packaging
2017-10-13 12:38:46 -07:00
Yichi Chiang 12edd27281 Introduce prevChangeID to CandidacyRequest and LeaderHeartbeatRequest 2017-10-12 17:11:58 -07:00
Bhaskar Muppana d1e9d28239 Backup log messages. 2017-10-12 16:12:42 -07:00
Balachandar Namasivayam 3aaa11977e Addressed Review Comments 2017-10-12 14:56:00 -07:00
Stephen Atherton ad0ed79d36 Merge pull request #172 from bmuppana/backup-refactor
Backup refactoring
2017-10-12 11:38:49 -07:00
Stephen Atherton 659e39103e Missed file from merge of master into backup-refactor 2017-10-12 11:25:29 -07:00
Stephen Atherton 11517f7bfc Merge branch 'master' into continuous-backup
# Conflicts:
#	fdbclient/FileBackupAgent.actor.cpp
2017-10-12 11:03:23 -07:00
A.J. Beamon b20ae356b1 Alloc instrumentation backtraces use format_backtrace; Magnesium detects backtraces from binaries besides fdbserver. 2017-10-12 08:39:13 -07:00
Stephen Atherton 40afa6a9b3 Merge pull request #151 from bmuppana/backup
Backup Refactoring
2017-10-11 22:40:32 -07:00
Balachandar Namasivayam fd4e62d4c9 Add documentation for the new atomic ops byte_min an byte_max as well as changing description for min and max atomic op. 2017-10-11 18:43:19 -07:00
Alex Miller 9648f96200 Also fix unforwarded Metric in IndexedSet.
This is simply an exceedingly minor performance fix rather than a correctness issue.
2017-10-11 17:40:48 -07:00
Alex Miller c24b941485 Fix erroneous std::move in indexed set, and clean up addMetric users.
This is a follow-on to c4eb73d0.  Thanks to Bala for pointing out the unchanged
std::move usage, and there appeared to not be many existing users of addMetric
anyway.
2017-10-11 17:36:51 -07:00
Balachandar Namasivayam 8e0bea2795 Update API_VERSION from 500 to 510 2017-10-11 13:49:38 -07:00
Stephen Atherton c3d8412abb Merge pull request #166 from cie/alexmiller/deathservice
Fix potential division by zero issues via RPC.
2017-10-10 16:47:38 -07:00
Evan Tschannen 8feb3b8fbc fixed conflict range workload by just disabling timeKeeper instead of the check, because it should be a more robust fix 2017-10-10 16:01:02 -07:00
Balachandar Namasivayam eeebf10030 Modified existing behavior of MIN and AND atomic ops. The new behavior results in a 'SET' if the atomic op is performed on a non -existing key.
Added new atomic ops ByteMin and ByteMax that does lexicographic comparison of byte strings.
2017-10-10 13:02:22 -07:00
Evan Tschannen c8525dc3e7 timekeeper is constantly changing keys in the system keyspace, so do not report errors on key mismatches on keys in the system keyspace 2017-10-10 12:04:56 -07:00
Evan Tschannen 5e6eba365b fix: always set confChange, because popVersion is not deterministic across proxies, and confChange needs to be set deterministically 2017-10-06 18:37:08 -07:00
Evan Tschannen 93b3d0e4e7 fix: toMap didn’t report logs proxies and resolvers 2017-10-06 15:55:50 -07:00
Alex Miller a21c8a820b Move cpuProfilerRequest from WorkerInterface to ClientWorkerInterface.
A way to access this stream is required if we wish to be able to toggle
profiling from fdbcli.  There's two ways to do this:

1. Use `monitorLeader()` to get a `ClusterControllerFullInterface`, and use
`getWorkers` from there to get a list of `WorkerInterface`s, from which we can
access cpuProfilerRequest.
2. Move cpuProfilerRequest to ClientWorkerInterface and use the existing code
in the client that can fetch a list of all `ClientWorkerInterface`s.

The split between WorkerInterface and ClientWorkerInterface appears to be
what a client might have a need to call versus what is fdbserver-internal (and
thus no client should even want to call). Thus, it seems to make more sense to
acknowledge that profiling is useful to be able to toggle from a client, and go
with option (2).
2017-10-05 14:08:28 -07:00
Yichi Chiang 3edc2824a9 Add initialClass to RegisterWorkerRequest 2 2017-10-05 11:03:25 -07:00
John Brownlee 6ad9e389dc Merge pull request #168 from cie/fdbmonitor-fork-retry-support
Add support for retrying a process if fork fails. The HUP signal now …
2017-10-05 10:19:43 -07:00
Alvin Moore 0c899c167a Merge branch 'master' of github.com:apple/foundationdb 2017-10-05 08:54:37 -07:00
A.J. Beamon c1bc355306 Add support for retrying a process if fork fails. The HUP signal now causes configuration to be reloaded and timeouts to be reset. A little refactoring to make this easier. 2017-10-05 08:23:52 -07:00
Alvin Moore de8f875038 Fixed call to IsClear
Changed killMachine and killDataCenter interface to return final killtype
Updated TESTs for DataCenter to ensure that DataCenter was killed
Added assertion to ensure that failed DC kills were not downgrades
2017-10-05 03:07:20 -07:00
Yichi Chiang 05f7626e39 Add initialClass to RegisterWorkerRequest 2017-10-04 17:11:12 -07:00
Yichi Chiang 3c70df57b5 Fix cluster controller review comments 2017-10-04 15:48:55 -07:00
A.J. Beamon 63570ccb05 Merge pull request #163 from cie/alexmiller/txnprofcli
Allow client profiling to be configured from fdbcli.
2017-10-04 14:35:14 -07:00
Alex Miller 2e662b6bb6 Fixing review comments.
* parse_with_units found a proper home in flow.h while this was pending
* atof->strtod for error checking
2017-10-04 14:00:38 -07:00
Alex Miller e55cc447d2 Address code review comments.
* Fixed memory corruption with SystemData key constants
* Removed duplication in ClusterController
* Reworked fdbcli actions to better represent explicit vs default assignments
2017-10-04 13:36:18 -07:00
Alex Miller 80fa597422 Allow client profiling to be configured from fdbcli.
This adds the following commands:
* profile client status
* profile client on 0.001 100MB
* profile client off
2017-10-04 13:36:18 -07:00
A.J. Beamon 5063793f36 Revert line ending change 2017-10-04 11:19:19 -07:00
A.J. Beamon d886b95628 Merge pull request #131 from cie/33300740-with-shutdown-hooks
<rdar://problem/33300740> Java: support callbacks from external multi-version client threads
2017-10-04 09:17:25 -07:00
Alex Miller 706427ee62 Fix potential division by zero issues via RPC.
A carefully crafted SplitMetricRequest could have caused division by zero.
It's not really great to offer Division By Zero As A Service, so let's just
return an error instead.
2017-10-03 22:11:08 -07:00
Alex Miller 0ac868ad5d "Simplify" IndexedSet's insert and addMetric API.
The existing code tried to work around the complexities of optionally using
rvalue references' move capabilities if they exist.  As seen in the previous
MapPair, there's a combinatorial explosion of prototypes to declare as the
parameter length increases.  Because of this, addMetric ended up with a strange
API, and there was a wrapper to make a copy for insert.

Instead, we can apply the idiom of using universal/forwarding references and
std::forward to allow the compiler to instantiate the combinations that are
needed.  There's a TagData struct with no copy constructor that validates that
move constructors can be properly called still.

I measured a 12-byte difference between before and after this change, so no
template bloat was introduced.
2017-10-03 20:15:12 -07:00
Evan Tschannen 3a2ddcc84a Add destinations that are read-write to the source list, so that cancelled data movement can contribute to copying the data for the next movement. 2017-10-03 17:39:08 -07:00
Stephen Atherton fd5fe3a000 Add slightly better handling of HTTP 503 in blob client. Previously it would end the blob request loop and the task doing the blob action would see a failure, but now the blob request attempt loop will continue to back off and retry. This is better because previously the task that saw the failure would be re-run quickly. 2017-10-03 15:25:49 -07:00
Stephen Atherton 03c4cea511 Added rate-controlled TraceEvents for blob http connection attempts and failures. 2017-10-03 15:21:40 -07:00
Yichi Chiang 25870189ae Merge pull request #165 from cie/fix-connection-count
Fix connection count
2017-10-03 14:03:54 -07:00
Yichi Chiang 284e35204a Fix connection count 2017-10-03 10:54:20 -07:00