Commit Graph

642 Commits

Author SHA1 Message Date
Markus Pilman 5af465aa29 FDB compiles on Apple Sillicon 2021-11-10 20:05:38 -07:00
sfc-gh-tclinkenbeard 7f09bdbda4 Remove -Wclass-memaccess for clang 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard 27db99a77f Enable clang comment warnings 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard c7b28abaf0 Enable unknown-pragmas warning for clang 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard 8a69aa08a2 Enable tautological-pointer-compare clang warning 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard d0c9cf4fb0 Enable mismatched-tags clang warning 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard ebcc023b6f Enable missing-field-initializers clang warning 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard 25257f6f87 Enable unused-function warning for clang 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard b0cec29849 Enable unused-local-typedef clang warning 2021-11-01 14:18:31 -07:00
sfc-gh-tclinkenbeard 13bb7838aa Enable clang -Wformat warning 2021-10-30 21:07:38 -07:00
Renxuan Wang f39e34cabe Use --enable-prof switch when building jemalloc。
I got errors like `<jemalloc>: Invalid conf pair: prof:true` when trying to use jemalloc. Referring to https://stackoverflow.com/questions/27422508/heap-dump-fails-with-jemalloc-mcllctl, seems that we are missing out this flag. https://github.com/jeffgriffith/native-jvm-leaks#building.
2021-10-21 10:08:55 -07:00
A.J. Beamon de863d170d Add some tests for timeout behavior with disconnected clusters 2021-09-29 13:16:17 -06:00
Neethu Haneesha Bingi c0e6b09fe3 Enforcing 6.22.1 rocksdb version and enabling readRange deadline option. 2021-09-17 08:53:23 -07:00
Markus Pilman 548b9d75f6 Fix filename 2021-09-16 15:15:06 -07:00
Markus Pilman 1ad8ca7dda Fix naming and change filename 2021-09-16 15:15:06 -07:00
Markus Pilman 2c39f4b2f0 Make naming consistent with Fedora guidelines 2021-09-16 15:15:06 -07:00
Markus Pilman 56aff2bc14 change package name to make yum happy 2021-09-16 15:15:06 -07:00
Mohamed Oulmahdi e93f6e323a Fix test paths for on Windows 2021-09-15 16:30:58 -06:00
Andrew Noyes 0d362aaf42 Fix the versioned packages so that they don't modify the source dir 2021-08-25 15:14:08 -07:00
Andrew Noyes 92c52d44d8 make_directory is deprecated. Use file(MAKE_DIRECTORY ...) 2021-08-25 11:30:26 -07:00
Andrew Noyes 3b4fed4f18
Merge pull request #4818 from sfc-gh-anoyes/anoyes/pkg_tester
Add pkg_tester
2021-08-24 12:22:50 -07:00
Andrew Noyes 8bbcfca8a0 Run all tests for versioned packages 2021-08-19 16:32:22 +00:00
Markus Pilman 2e8a469b27 Incomplete implementation 2021-08-19 16:32:22 +00:00
Pierre Zemb b1dce03e0d
Add warning on CMake when bindings requirements are not reached 2021-08-19 17:39:03 +02:00
Eric Dong c6ed0f94bf Fix the wording of a CMake message for SSL on Windows 2021-08-13 13:02:49 -07:00
Lukas Joswiak a605fb3852
Merge pull request #5026 from sfc-gh-ljoswiak/fixes/alp6
Actor sampling
2021-08-11 13:44:17 -07:00
Markus Pilman eb908546bb
Merge pull request #5318 from PierreZ/cmake/options
add CMake's option for bindings
2021-08-06 13:06:24 -06:00
Pierre Zemb 415bf2afc0
add CMake's option for bindings 2021-08-05 21:55:45 +02:00
Markus Pilman defa41b502 Don't use -latomic with clang 2021-08-05 11:51:44 -06:00
Xiaoge Su f6beda6623 When using non-Apple clang, link to libatomic 2021-08-05 07:32:41 -07:00
Xiaoge Su 38ac3481ff fixup! Fix the indentation 2021-08-05 07:32:41 -07:00
Xiaoge Su 1d8068d48f Ensure CompileBoost work on Mac
This is tested on a local Mac with most recent upgrades of xcode.
2021-08-05 07:32:41 -07:00
Xiaoge Su 1d685524db Let CMake use /opt/boost_1_72_0_clang/ boost when the compiler is clang
For boost::context, clang abi and gcc abi are not compatible. In docker
environment, we have different builds, which are located at

  gcc version:    /opt/boost_1_72_0
  clang version:  /opt/boost_1_72_0_clang

In this patch, when clang compiler is detected, the clang version of
boost::context is used.
2021-08-05 07:32:41 -07:00
Lukas Joswiak 5dc9a97230 Merge branch 'master' into fixes/alp6 2021-08-01 20:42:52 -07:00
Andrew Noyes 353efe7db2
Merge pull request #5264 from sfc-gh-tclinkenbeard/fix-more-clang-warnings
Enable more warnings for `clang`
2021-07-29 15:43:54 -07:00
Daniel Smith d5174b2d98 Update RocksDB version 2021-07-29 12:58:31 -07:00
sfc-gh-tclinkenbeard 94a65865d9 Merge remote-tracking branch 'origin/master' into fix-clang-warnings 2021-07-28 12:29:27 -07:00
sfc-gh-tclinkenbeard c74047c665 Merge remote-tracking branch 'origin/master' into fix-more-clang-warnings 2021-07-28 11:51:02 -07:00
Lukas Joswiak 3eed4084e2 Merge branch 'master' into fixes/alp6 2021-07-27 11:26:53 -07:00
Markus Pilman e1ec5f9aa4 Fix bug where tests wouldn't be added to correctness package 2021-07-27 11:38:25 -06:00
Markus Pilman 91e5498357 disable simulation in ctest by default 2021-07-27 11:17:55 -06:00
Lukas Joswiak 59d535149e Merge branch 'master' into fixes/alp6 2021-07-27 10:07:18 -07:00
sfc-gh-tclinkenbeard cedaa72c0f Enable reorder and reorder-ctor warnings 2021-07-24 23:23:52 -07:00
sfc-gh-tclinkenbeard 13fe89ff06 Enable self-assign warning for clang 2021-07-23 17:32:01 -07:00
sfc-gh-tclinkenbeard 8d4569b63c Enable dangling-else warning for clang 2021-07-23 17:26:37 -07:00
sfc-gh-tclinkenbeard 8fe3e45fc6 Enable more clang warnings 2021-07-23 10:07:04 -07:00
Markus Pilman 35f835548d Fix Java integration tests 2021-07-21 13:46:39 -06:00
Chaoguang Lin 5e83281742 Add the option to customize add_fdbclient_test timeout time 2021-07-15 06:55:54 +00:00
Chaoguang Lin 41a9470058 Add comments, remove debugging info 2021-07-14 20:24:16 +00:00
Chaoguang Lin 1e3d3811cc Merge branch 'master' of github.com:apple/foundationdb into extend-fdbclient-test-for-multiple-processes 2021-07-14 20:20:39 +00:00
Chaoguang Lin 368657623a Extend add_fdbclient_test to support multiple processes' cluster 2021-07-14 20:17:12 +00:00
sfc-gh-tclinkenbeard 475abe301c Merge remote-tracking branch 'origin/master' into fix-ub 2021-07-14 10:47:02 -07:00
Russell Sears c42815f15f
Merge pull request #5127 from vishesh/cherrypick
Making it possible to run a multiple-cluster Java integration test (cherry-pick of #4456 from 6.3)
2021-07-13 09:14:20 -07:00
Mohamed Oulmahdi 7b590c2447 Add support for building on Windows via Docker
- Add Dockerfile.windows and Dockerfile..windows.devel
- build.ps1: script that produces the binaries (MSI, tools)
- CMake: disable building documentation on windows (not supported)
- Fix invalid path when building setup with WIX
- Remove deprecated @Action attribute from wix project
2021-07-08 11:42:16 +02:00
Scott Fines d1db0d4013 Making it possible to run a multiple-cluster Java integration test 2021-07-07 10:15:18 -07:00
Markus Pilman 2da4a4ee6f Add target to build unversioned correctness pkgs 2021-06-29 15:40:59 -06:00
Daniel Smith 1d38795a46 Properly enable santizers in RocksDB build 2021-06-23 13:58:36 -04:00
Andrew Noyes c9b06839fc Halt on error in ubsan for ctest tests 2021-06-23 09:25:51 -07:00
Lukas Joswiak 153de33f57 Revert "Merge pull request #4802 from sfc-gh-ljoswiak/revert/actor-lineage"
This reverts commit 6499fa178e, reversing
changes made to 1512631957.
2021-06-04 13:31:55 -07:00
Andrew Noyes 061afda2ec
Fix several package issues (#4801)
* Make the structure of the server pkg match 6.2.28

* Fix OSX lib path

* Fix install destinations in client

Previously, backup_agent would map to fdbmonitor installation dir -
which is incorrect in the sense that it disagrees with where the default
foundationdb.conf expects to find backup_agent. Add a new backupagent
installation dir and install there, matching foundationdb.conf's
expectations.

Also fix an issue where several of the versions of fdbbackup weren't
being installed

* Update packaging/osx/buildpkg.sh for cmake

* Update README instructions for pkg file

* Remove osx cpack config

* Remove pm install destinations

* Fix weird syntax

* Remove cpack reference to PM

* Address review comments
2021-05-12 11:41:26 -05:00
Lukas Joswiak 4ea760b2a9 Revert "Merge pull request #4136 from sfc-gh-mpilman/features/actor-lineage"
This reverts commit da41534618, reversing
changes made to e6300905d6.
2021-05-10 20:26:12 -07:00
Andrew Noyes b194a313d8
Merge pull request #4746 from sfc-gh-ljoswiak/fixes/boost
Fix boost download links
2021-05-05 16:05:34 -07:00
Lukas Joswiak a274c4768d Fix remaining download links 2021-05-05 15:51:00 -07:00
Lukas Joswiak f2b70011cc Fix msgpack dependency 2021-05-04 15:59:08 -07:00
Lukas Joswiak 8dcd779fc4
Merge branch 'master' into features/actor-lineage 2021-05-02 14:11:42 -07:00
Andrew Noyes 41e0eac450 Fix the data dir for DEB and EL7 to be /usr/lib/foundationdb/data
Also remove the unused legacy mapping for install dirs
2021-04-29 21:25:55 +00:00
Markus Pilman 4fab2ecd30 Merge remote-tracking branch 'origin/master' into features/actor-lineage 2021-04-28 09:20:54 -06:00
john_leach b39b2b4a3c Initial Container structure, build images from build_output/packages/ 2021-04-23 15:33:01 -07:00
Andrew Noyes 8a00c6cdf8 Add -Wshift-sign-overflow
This catches the bug fixed in #4656 at compile time
2021-04-21 23:49:26 +00:00
Lukas Joswiak c8b8e8cf7d Fix msgpack install 2021-04-14 11:27:01 -07:00
Markus Pilman 2064903705 collect and serialize 2021-04-09 14:25:11 -06:00
Chaoguang Lin da5930171e Fix boost build on OS X 2021-03-25 11:30:22 -07:00
Markus Pilman 0ba99c8e83 Pretty-print topology when starting simulation 2021-03-23 09:38:07 -06:00
Vishesh Yadav 2cd3f45fd6 Merge remote-tracking branch 'apple/release-6.3' into master-format-final
release-6.3 was recently merged, and there were two PRs which were
merged in between and got those changes in here. Hence, since all the
changes were in, discarded the incoming changes and accepted all
current.
2021-03-10 16:50:44 -08:00
Andrew Noyes ccc8404faa Disable go bindings for sanitizer builds 2021-03-09 20:55:41 +00:00
Andrew Noyes b5084c634d Inform boost context of valgrind usage
This fixes the "client switching stacks?" warning that valgrind is
currently issuing.

Also fix a memory error that currently doesn't manifest because of the
way FastAllocator works (if you free a small buffer and then immediately
allocate the same size buffer in FastAllocator you always get the same
buffer back). You can see it if you set FDB_VALGRIND_PRECISE= (causes
FastAllocator to use malloc)

Also minor refactoring and cleanup of CoroFlow.actor.cpp

Also (probably) fix the other sanitizer builds, although I didn't test
that
2021-03-09 01:33:32 +00:00
Markus Pilman 1510c97085 fix debian packages 2021-03-02 12:41:21 -07:00
Dave Cottlehuber c848ae4cda cmake: skip jemalloc on FreeBSD
FreeBSD is the upstream for jemalloc so it's the system malloc already
2021-02-22 16:15:02 +00:00
Markus Pilman a3bd2652c2 revert compile boost to old behavior for windows 2021-02-17 09:30:32 -07:00
Markus Pilman d13e240496 use libcoroutine for Windows
The Windows CI still doesn't have boost context installed
so we use the old implementation for now
2021-02-17 09:23:41 -07:00
Markus Pilman f514194aec Merge remote-tracking branch 'origin/master' into features/coroutine2 2021-02-17 09:03:07 -07:00
A.J. Beamon 601a548cfe Revert "Move new config to config.h.cmake"
This reverts commit 2951ebb4e7.
2021-02-08 14:01:02 -08:00
A.J. Beamon 2951ebb4e7 Move new config to config.h.cmake 2021-02-08 13:34:17 -08:00
A.J. Beamon 85ec192169 Remove bad merge line 2021-02-08 13:02:55 -08:00
A.J. Beamon aaf0a9aa7b Merge branch 'release-6.3' into merge-release-6.3-into-master
# Conflicts:
#	build/docker-compose.yaml
#	cmake/ConfigureCompiler.cmake
#	fdbclient/FileBackupAgent.actor.cpp
#	fdbrpc/AsyncFileCached.actor.h
#	fdbrpc/IAsyncFile.h
#	fdbrpc/IRateControl.h
#	fdbrpc/simulator.h
#	fdbserver/KeyValueStoreSQLite.actor.cpp
#	fdbserver/storageserver.actor.cpp
#	fdbservice/ServiceBase.cpp
2021-02-08 12:58:34 -08:00
A.J. Beamon b70c69e099 Address review note that some variables need to be set earlier. 2021-02-08 10:42:07 -08:00
Markus Pilman c2fa9b100d fix bootstrap command arguments 2021-02-08 10:30:18 -07:00
Markus Pilman 6e571ab87b Merge branch 'master' of github.com:apple/foundationdb into features/coroutine2 2021-02-08 10:25:29 -07:00
A.J. Beamon 67e783acf8 Merge branch 'release-6.2' into merge-release-6.2-into-release-6.3
# Conflicts:
#	cmake/CompileBoost.cmake
#	cmake/FDBComponents.cmake
#	fdbrpc/AsyncFileCached.actor.h
#	fdbrpc/simulator.h
#	fdbserver/KeyValueStoreSQLite.actor.cpp
#	fdbserver/Knobs.cpp
#	fdbserver/Knobs.h
#	fdbserver/storageserver.actor.cpp
#	flow/Knobs.h
#	flow/network.h
2021-02-08 09:20:28 -08:00
Alvin Moore c357b36f9a
Merge pull request #4277 from sfc-gh-mpilman/bugfix/fix-jemalloc-link-order
Fix order of jemalloc libraries
2021-02-06 21:03:55 -05:00
Andrew Noyes 75f8725392 Add test for using an external client 2021-02-05 01:24:45 +00:00
Markus Pilman 9b2bab96f1 add comment explaining the change 2021-02-04 15:39:42 -07:00
Markus Pilman aae947ad0b Fix order of jemalloc libraries
PIC library has to be first
2021-02-04 15:13:41 -07:00
Andrew Noyes e4a55908ff
Merge pull request #4222 from sfc-gh-mpilman/features/jemalloc
Replace standard malloc with jemalloc
2021-02-04 12:47:29 -08:00
Markus Pilman 7b489da13b introduce USE_JEMALLOC and some refactoring 2021-02-04 11:53:28 -07:00
Markus Pilman f4370adfcb use INTERFACE for interface target 2021-02-04 11:22:45 -07:00
Markus Pilman 04f6a3bb00 fixed broken CompileBoost.cmake 2021-02-02 08:58:42 -07:00
Markus Pilman 54e20873b7 Don't attempt download&compile of boost on WIN32
This takes forever on Windows and we want to only
support docker anyways. Currently boost compilation
on Windows doesn't work properly and it's probably
not worth fixing this
2021-02-01 16:29:02 -07:00
Markus Pilman 0805902770 Merge branch 'release-6.2' of github.com:apple/foundationdb into features/add-jemalloc-boost 2021-02-01 11:27:12 -07:00
Christophe Chevalier ff0667b28d winbuild: define BOOST_USE_WINDOWS_H, WIN32_LEAN_AND_MEAN and NOMINMAX to fix various macro expansions issues
- NOMINMAX to fix confusion between std::max(..) and max(..) macro redefinition
- BOOST_USE_WINDOWS_H to prevent boost from redefining win32 APIs
- WIN32_LEAN_AND_MEAN to fix include ordering issues with winsock.h
2021-01-30 15:15:02 +01:00
Markus Pilman 8bec456591 find boost in docker image 2021-01-29 11:51:38 -07:00
Markus Pilman 5dea9caedb use BOOST_ROOT (for backwards compatability) 2021-01-28 09:25:26 -07:00
Markus Pilman 7c64e3943b compile boost for sanitizers 2021-01-27 19:13:02 -07:00
Markus Pilman 0696c2d9b4 several bug fixes 2021-01-27 18:22:48 -07:00
Markus Pilman 1f8222d1b7 install boost in docker image and make sure cmake finds it 2021-01-27 16:37:04 -07:00
Markus Pilman 2e9db80db9 fix macOS compilation 2021-01-27 11:35:50 -07:00
Markus Pilman 75102d152a don't use user-config on macOS and Win32 2021-01-27 10:44:19 -07:00
Andrew Noyes 341069fcce WIP asan on boost coroutine2 2021-01-26 17:10:13 -07:00
Markus Pilman 529fadbf96 Compile boost and first version of coro thread pool 2021-01-26 17:06:08 -07:00
Markus Pilman c870903c38 fix jemalloc dependencies 2021-01-26 11:37:09 -07:00
Markus Pilman 97c5e13091 added debug message to figure out why CI is failing 2021-01-26 11:13:14 -07:00
Andrew Noyes 0ef44739ea Fix OPEN_FOR_IDE build in preparation for using clang-tidy 2021-01-26 02:04:11 +00:00
Kao Makino 29976f0b41 Fix minor issues for aarch64 2021-01-25 12:10:57 -08:00
Russell Sears 85e21c1ba1 CMake support for BoringSSL 2021-01-22 22:45:51 +00:00
Andrew Noyes 58b4a9b907 Resolve conflicts 2021-01-21 20:59:44 +00:00
Markus Pilman b149069b58 link statically against jemalloc 2021-01-21 13:35:27 -07:00
Andrew Noyes 281151ff20 Merge remote-tracking branch 'upstream/release-6.2' into anoyes/merge-6.2-to-6.3
Commit conflict markers for now
2021-01-21 17:54:26 +00:00
Andrew Noyes ff7d306b09 Merge branch 'release-6.3' into anoyes/merge-6.3-to-master
Include conflict markers for now. Will resolve.
2021-01-15 18:04:09 +00:00
Andrew Noyes ddb5b0b050 Backport correctness package 2021-01-15 00:34:47 +00:00
Andrew Noyes e2e9b70206 Remove -Wno-unused-value 2021-01-06 22:09:38 +00:00
Markus Pilman dae8ea24ad Move compiler definitions into config file 2020-11-25 15:06:59 -07:00
David Youngworth d64cf8b9e3 Merge branch 6.3 into master 2020-11-17 11:22:45 -08:00
Andrew Noyes 3b1e785e5b Remove -Wno-unused-value for clang 2020-11-09 18:44:50 +00:00
Markus Pilman 864581c3b7 Merge remote-tracking branch 'origin/release-6.3' into features/versioned-packages 2020-11-05 15:54:39 -07:00
Markus Pilman 80d5b6c0c9
Merge pull request #4015 from xis19/release-6.3
Fix the CPack MacOS X package
2020-11-05 15:52:22 -07:00
Markus Pilman 703b2e276a addressed review comments 2020-11-05 15:50:24 -07:00
Daniel Smith 7d1db8a66e Restore building RocksDB by default with GCC 2020-11-05 09:11:58 -08:00
Daniel Smith 6b1bbc49e3 Restore building RocksDB by default with GCC 2020-11-05 17:07:53 +00:00
Daniel Smith 8ed7d296b4 Fix the ability to disable building RocksDB with GCC 2020-11-04 14:58:24 -08:00
Daniel Smith b1194801b1 Fix the ability to disable building RocksDB with GCC 2020-11-04 21:59:14 +00:00
Xiaoge Su 59fa74bfb3 FoundationDB MacOS client package > add symlink, move files
* In FDB 6.2, there are symlinks to backup_agent to usr/local/bin, this
  patch makes 6.3 adds these symlinks to the proper positions.
* In FDB 6.2, the libfdb_c.dylib is installed to usr/local/lib, this
  patch makes 6.3 install the dylib to this path.
2020-11-04 10:43:46 -08:00
Xiaoge Su bd3b6e3a48 FoundationDB MacOS server package > add data/logs path
The paths

    ./usr/local/foundationdb/logs
    ./usr/local/foundationdb/data

exists in 6.2 but not 6.3 for MacOS pkg server package. This patch fixes
the issue.
2020-11-04 10:43:39 -08:00
sfc-gh-tclinkenbeard cf4c8e375f Merge remote-tracking branch 'origin/release-6.3' into merge 2020-10-29 22:15:41 -07:00
Markus Pilman 9861d90a9d add service files to versioned packages
This includes systemd and initd files. This way
an admin can manually install them in the system
2020-10-28 14:14:58 -06:00
Markus Pilman f763d89dc3 add alternatives to install symlinks 2020-10-28 14:03:48 -06:00
Markus Pilman ca57738df2 remove support for el6 2020-10-28 13:10:59 -06:00
Markus Pilman b4c59e0a02 CPack refactoring and introduction of multiversion 2020-10-28 12:55:15 -06:00
Andrew Noyes e82339f40e
Merge pull request #3906 from sfc-gh-anoyes/anoyes/use-gcov
Add USE_GCOV cmake option
2020-10-27 08:27:46 -07:00
A.J. Beamon 8e512f3109
Merge pull request #3943 from sfc-gh-anoyes/anoyes/valgrind-precise
Increase valgrind precision if env var FDB_VALGRIND_PRECISE is set
2020-10-26 14:01:58 -07:00
Andrew Noyes 832199a089
Merge pull request #3948 from sfc-gh-mpilman/features/coverage-in-correctness
Features/coverage in correctness
2020-10-23 08:35:41 -07:00
Jingyu Zhou 2a29df0d60
Merge pull request #3949 from sfc-gh-mpilman/bugfixes/gperftools
Bugfixes/gperftools
2020-10-22 17:16:17 -07:00
Markus Pilman 08eaa4bc8a
Update cmake/FDBComponents.cmake 2020-10-22 17:00:59 -06:00
Markus Pilman 82fcefcb7b add coverage files of dependencies 2020-10-22 14:51:10 -06:00
Markus Pilman 5c506908ab
Update cmake/FDBComponents.cmake 2020-10-22 14:13:24 -06:00
Markus Pilman 93d7addd28 minor fix to make gperftools integration a bit prettier 2020-10-22 13:56:05 -06:00
Markus Pilman 684171938a set package files through an out variable 2020-10-22 13:53:03 -06:00
Markus Pilman 0906afbbf7 Add coverage file to correctness package 2020-10-22 13:49:53 -06:00
Markus Pilman 4b12b9fc01 Fix toml11 cmake 2020-10-22 13:27:06 -06:00
Andrew Noyes 79163947a6 Add FLOW_KNOBS->VALGRIND_PRECISE 2020-10-22 16:31:48 +00:00
Andrew Noyes 1ad779631f
Update cmake/ConfigureCompiler.cmake 2020-10-16 09:19:10 -07:00