Alex Miller
63b1e85338
Ban Void _ = wait(...)
constructions, and require just wait(...)
.
...
There's never any reason to save the value of a Void return, and it's
the easiest source of redefined variable bugs that will creep back in
over time. So just `wait(...)`, it's cleaner that way.
2018-08-14 15:50:26 -07:00
Alex Miller
86dbe1f0e9
Fix more instances of actorcompiler.h being in the wrong place.
2018-08-14 15:50:26 -07:00
Alex Miller
74a9d2f836
Remove a couple more Void _ = wait
s that crept in from rebase.
2018-08-14 15:50:26 -07:00
Alex Miller
809b2ecdd7
Add a missing #include <algorithm> to flow/Util.h
2018-08-14 15:50:26 -07:00
Alex Miller
7feb5d8209
Remove including flow.h in actorcompiler.h, and fix resulting breakage.
...
For files that required flow.h, and only got it through actorcompiler.h,
their version of flow.h would have the actorcompiler #defines defined.
Then, if it included a STL/boost file, the same breakage would result.
This needs to not happen, so the include of flow.h in actorcompiler.h
was removed.
2018-08-14 15:50:26 -07:00
Alex Miller
bca324eaa6
More actorcompiler.h fixes and additions.
2018-08-14 15:50:26 -07:00
Alex Miller
fb31a6999f
Rewrite all files to have #include actorcompiler.h as the last include.
2018-08-14 15:50:26 -07:00
Alex Miller
9bcc7685d2
Add creating compile_commands.json to the build system.
...
I'm really not proud of how I did this though.
It must be run from the same environment as one's editor (ie. not in the
docker image) so that the paths are correct.
2018-08-14 15:50:26 -07:00
Alex Miller
69aa33eed5
Fix a case of a bool being used as an integer.
2018-08-14 15:50:26 -07:00
Alex Miller
6e7f8da694
Add includes for missing definitions of size_t and uint32_t.
2018-08-14 15:50:26 -07:00
Alex Miller
3a0366d4c5
Add clang as a supported compiler.
2018-08-14 15:50:26 -07:00
Alex Miller
07e5281142
Restrict actor keyword #defines to actor files.
...
This introduces a new rule in our codebase, that any file that #includes
actorcompiler.h needs to do it as the last #include, and it needs to
then #include unactorcompiler.h at the end of the file.
The point of this is that it prevents our actorcompiler.h #defines from
leaking into boost or the c++ standard library. Both of these start
throwing errors if you s/state// their code, which `#define state `
effectively does.
2018-08-14 15:50:26 -07:00
Alex Miller
805781ed32
Forward declare instead of #include in actorcompiler.
...
For some reason, clang thinks that the #ifndef's aren't matched by
#endif's if we #include "flow.h" in the middle. Regardless, it's
better for compile time slightly to forward declare, so let's just do
that anyway.
It also maybe gets us away from a weird
actorcompiler.h -> flow.h -> genericactor.actor.h -> actorcompiler.h
circular include.
2018-08-14 15:50:26 -07:00
Alex Miller
535b5701e5
Rewrite all Void _ = wait(...)
-> wait(...)
.
...
This takes advantage of the new actorcompiler functionality to avoid
having duplicate definitions of `Void _` when trying to feed the
un-actorompiled source through clang.
2018-08-14 15:50:26 -07:00
Alex Miller
1901be1e63
Allow wait()
instead of Void _ = wait()
.
2018-08-14 15:49:47 -07:00
Alex Miller
848ebcb4e5
Merge pull request #702 from pzmarzly/patch-1
...
Fix broken link in documentation
2018-08-14 13:11:43 -07:00
Evan Tschannen
f51d0ea020
Merge pull request #708 from etschannen/master
...
Merge 6.0 into master
2018-08-14 09:44:58 -07:00
Evan Tschannen
cdcf056aef
Merge branch 'release-6.0'
2018-08-14 09:43:51 -07:00
AlvinMooreSr
de396d15f2
Merge pull request #706 from AlvinMooreSr/release-6.0.6
...
Release 6.0.6 prerequisite changes
6.0.6
2018-08-14 08:08:10 -04:00
Alvin Moore
4519aa8397
Changed Windows GUID
...
Updated documentation version for release
2018-08-14 05:03:38 -07:00
AlvinMooreSr
1431d1bb66
Merge pull request #705 from etschannen/release-6.0
...
Added a yield to data distribution and fixed a problem with leader election
2018-08-14 07:56:20 -04:00
Evan Tschannen
883050d12f
moved the creation of the yieldPromiseStream to properly yield moves from initialDataDistribution
2018-08-13 22:29:55 -07:00
Evan Tschannen
d98f843472
updated release notes for 6.0.6
2018-08-13 21:34:32 -07:00
Evan Tschannen
f52d841e8a
we need to send notifications when the leader fitness becomes worse so that we repopulate availableCandidates to compare with the new lower fitness
2018-08-13 20:56:02 -07:00
Evan Tschannen
2341e5d8ad
fix: we must yield when updating shardsAffectedByTeamFailure with the initial shards. A test with 1 million shards caused a 22 second slow task
2018-08-13 19:46:47 -07:00
Evan Tschannen
8fc8aa0493
fix: we must notify every time nextNominee is not present to continue to repopulate availableCandidates
2018-08-13 17:59:47 -07:00
Alec Grieser
fad07307a1
Merge pull request #704 from ajbeamon/directory-test-fixes
...
Prepopulated directories should have their partition state set.
2018-08-13 13:47:54 -07:00
A.J. Beamon
6af8c0d907
Prepopulated directories should have their partition state set. Filter commit_unknow_result errors if encountered in the directory test.
2018-08-13 13:35:48 -07:00
Evan Tschannen
fc4f74e0cc
Merge pull request #703 from etschannen/release-6.0
...
Merge 5.2 into 6.0
2018-08-13 10:13:51 -07:00
Evan Tschannen
aaa90de7d9
merge 5.2 into 6.0
2018-08-13 10:13:03 -07:00
A.J. Beamon
b8486d4a2a
Merge pull request #700 from etschannen/release-5.2
...
Fixed a leader election bug
2018-08-13 09:01:02 -07:00
A.J. Beamon
d9bb59c780
Merge pull request #701 from etschannen/release-6.0
...
Make sure we still accept some connections even if we are CPU bound by high priority work
2018-08-13 08:43:53 -07:00
Paweł Zmarzły
9edd69ee09
Fix broken link in documentation
...
`https://apple.github.io/performance ` -> `https://apple.github.io/foundationdb/performance `
2018-08-13 02:41:02 +02:00
Evan Tschannen
3186fac397
Make sure we still accept some connections even if we are CPU bound by high priority work
2018-08-10 17:47:21 -07:00
Evan Tschannen
4f9dd10644
fix: as long as some leader was sending heartbeats we would keep the currentNominee as leader, even if that currentNominee was not the one sending the heartbeats
2018-08-10 17:11:24 -07:00
Evan Tschannen
8b3309543d
Merge pull request #698 from ajbeamon/master
...
Merge release-6.0 into master
2018-08-10 14:36:34 -07:00
A.J. Beamon
574c5576a2
Merge branch 'release-6.0' of github.com:apple/foundationdb
...
# Conflicts:
# fdbrpc/TLSConnection.actor.cpp
# versions.target
2018-08-10 14:31:58 -07:00
A.J. Beamon
faea370555
Merge pull request #697 from ajbeamon/release-6.0
...
Post-release updates for 6.0.5 release
2018-08-10 14:30:03 -07:00
A.J. Beamon
61480bdf4e
Post-release updates for 6.0.5 release
2018-08-10 14:28:56 -07:00
A.J. Beamon
55bfd80e20
Merge pull request #696 from ajbeamon/release-6.0
...
Prepare for Release 6.0
6.0.5
2018-08-10 12:13:05 -07:00
A.J. Beamon
6bc8dd3a2b
Prepare for 6.0.5 release
2018-08-10 12:12:17 -07:00
A.J. Beamon
dda71f4597
Merge pull request #694 from etschannen/release-6.0
...
Updated release notes
2018-08-10 12:02:24 -07:00
A.J. Beamon
1379f37f48
Merge pull request #695 from ajbeamon/release-6.0
...
Merge Release 5.2 into Release 6.0
2018-08-10 11:54:14 -07:00
A.J. Beamon
40597f995e
Merge branch 'release-5.2' of github.com:apple/foundationdb into release-6.0
...
# Conflicts:
# documentation/sphinx/source/release-notes.rst
2018-08-10 11:52:10 -07:00
Evan Tschannen
dee3ff761b
updated release notes
2018-08-10 11:41:42 -07:00
Evan Tschannen
72b025ecc8
backed out fileconfigure
2018-08-10 10:16:01 -07:00
Evan Tschannen
ea7b5d63ee
Merge branch 'release-6.0' of github.com:apple/foundationdb into release-6.0
2018-08-10 09:55:53 -07:00
Evan Tschannen
b05220fcf2
renamed configurefile to fileconfigure
2018-08-09 23:56:06 -07:00
Evan Tschannen
ae8371b490
updated release notes
2018-08-09 23:04:49 -07:00
Evan Tschannen
0438a3f91d
added the ability to change the database configuration from a JSON document stored in a file. This provides a cleaner way to change the region configuration.
2018-08-09 22:59:14 -07:00