- 18 Dec, 2019 2 commits
-
-
Dan Melnic authored
Summary: Skip the EventBase tests if the backend is not available Reviewed By: yfeldblum Differential Revision: D19002064 fbshipit-source-id: a995df02998c80de2f9076ea16a0281b6288d6b5
-
Dan Melnic authored
Summary: Fix io_uring backend tests Reviewed By: yfeldblum, danobi Differential Revision: D19023775 fbshipit-source-id: d696064d26b37f52529c84601f6797ef82b0ddb5
-
- 17 Dec, 2019 6 commits
-
-
Dan Melnic authored
Summary: EventBase test lib rework Reviewed By: yfeldblum Differential Revision: D19001877 fbshipit-source-id: d99ad41007012c7bd21ee259a0a0b5ee2b709512
-
Dan Melnic authored
Summary: Add IoUringBackend::NotAvailable exception Reviewed By: kevin-vigor Differential Revision: D19143143 fbshipit-source-id: 7b55106d50882d34fc6100a81ff2a4e5748e9b85
-
Andrii Grynenko authored
Summary: This allows makeObserver to work even during shutdown. Reviewed By: yfeldblum Differential Revision: D19136597 fbshipit-source-id: 17e946a66743a56d24904697c02ce7165bcaf397
-
Misha Shneerson authored
Summary: Linux thread identifier is something that we can get with `gettid`. http://man7.org/linux/man-pages/man2/gettid.2.html This TID is super usefully for providing thread information while debugging on Linux (this is the thing that `ps` command uses, or procfs), but is not really mappable from `std::thread::id` (e.g. the thread handle we get with `pthread_self()`). Reviewed By: yfeldblum Differential Revision: D19134596 fbshipit-source-id: 32ad025c5e378e3c7b55da1aad8dd9f3e26d0892
-
Elliott Clark authored
Summary: While running a system lots of different values will be added to lots of different `MultiLevelTimeSeries`. These values can be timestamps, lengths of time, file sizes, just about anything. There's no way for the underlying library to know before hand how large they will be. So it's always going to be possible to cause undefined behavior. That means we could fix this one of two ways. We could make this code be ignored for ubsan, or we could make it never roll over. I have made it so that the code won't roll over here. This seems better because it will continue to give more representative numbers. Rather than going from a very large number to a very small number, we'll remain at a very large number. That should still convey to every one that the numbers being accumulated are very large. Reviewed By: mzlee Differential Revision: D16970762 fbshipit-source-id: c56f6db1dbdecefd190e6ac357133886a3642571
-
Dan Melnic authored
Summary: New 20191216 liburing Reviewed By: danobi Differential Revision: D19125513 fbshipit-source-id: 38d2800ee75865cb76cb06edc0328feaa44bab3e
-
- 16 Dec, 2019 1 commit
-
-
Lee Howes authored
Summary: Integrate calls into logging framework to allow tracking of source and use of the global executor. Reviewed By: andriigrynenko Differential Revision: D18232728 fbshipit-source-id: e714b870cc041af9c99a95baf8f32c3819852b37
-
- 14 Dec, 2019 3 commits
-
-
Lee Howes authored
Summary: Adds sampled logging to track executors passed to Future::via. Reviewed By: andriigrynenko Differential Revision: D18233242 fbshipit-source-id: b5c004f643261a36fd0b63fb6e033263ece1662f
-
Igor Sugak authored
Reviewed By: Orvid Differential Revision: D19053964 fbshipit-source-id: dd31937cbeb3c7ef202e4b91c1b153f849376bdf
-
Yedidya Feldblum authored
Summary: [Folly] Prefer `TEST_F` and tests named `...Test` in `folly/experimental/coro/`. Reviewed By: lewissbaker Differential Revision: D18746584 fbshipit-source-id: 49156a1dca5ef115bf12add5ceb38cb7905fac3d
-
- 13 Dec, 2019 7 commits
-
-
Igor Sugak authored
Summary: These files fail to build when a different version of glog is used. Notice that both cpp files use gflags but don't include its header. Reviewed By: pixelb Differential Revision: D18974446 fbshipit-source-id: 4cfaa6dc62c795f4fe7f6624f078cffe550ecfec
-
Felix Handte authored
Summary: D18890515 broke folly builds when zstd isn't present. (My bad!!) This should fix it. Reviewed By: lukaspiatkowski Differential Revision: D19029293 fbshipit-source-id: 2ede5a8402e60af61a294c9db35ca15dffdf4c49
-
Sushil Patil authored
Summary: `folly::AtomicBitSet<N>` used `N` to denote the number of blocks (32-bit or 64-bit each) instead of number of bits as used by `std::bitset`. This confusion of unit led to unintentional allocation of extra storage in many cases. A simple fix would be to make `N` denote number of bits. However, changing meaning of `N`could lead to silent breakage of code during run time for some users who used `N` to denote number of blocks. Therefore, to make the new meaning of `N` more explicit, `AtomicBitSet` is renamed to `ConcurrentBitSet` & `N` now denotes the number of bits. Reviewed By: al13n321 Differential Revision: D18866751 fbshipit-source-id: 17741646862776e1a080eaac7877f495bb56b656
-
Andrii Grynenko authored
Differential Revision: D19001755 fbshipit-source-id: bda1a278017059e83c9a529aac7b429f074e42c1
-
Misha Shneerson authored
Summary: We should be able to associate rootId with the TID the request is running on. Reviewed By: yfeldblum Differential Revision: D18918492 fbshipit-source-id: 539cd78729b438928a9a4b0c93e8e17295b642d5
-
Misha Shneerson authored
Summary: What: exposed an API `folly::RequestContext::getRootsFromAllThreads` that reports all "root" RequestContexts for all threads in the process. (where "root" is defined as the original RequestContext created for the request but which might have been overridden with `ShallowCopyRequestContextScopeGuard)` Reviewed By: andriigrynenko Differential Revision: D18849187 fbshipit-source-id: f3c67becf1e38fb8d2198c81ed0ce77bac860d63
-
Andrii Vasylevskyi authored
Summary: Fixing couple more failures in folly when compiling wasm: 1) making posix_memalign used instead of memalign (wasi-libc has memlaign as legacy P123789170) 2) disabling clearenv() that is using environ, which wasi-libc has off by ```#ifdef _GNU_SOURCE```, not sure why, but it's already off for linux and we won't use it our wasm code either. Reviewed By: shodoco Differential Revision: D18944271 fbshipit-source-id: ffa838591ada1248fdb8ae24f7eac45896a311e2
-
- 12 Dec, 2019 3 commits
-
-
Felix Handte authored
Summary: This is intentionally not hidden in `folly/compression/Zstd.cpp`, so that it can be used by other Zstd users as well. Reviewed By: bimbashrestha Differential Revision: D18890515 fbshipit-source-id: e87eb6acd03f4b4d5f68201ef924984047d0160e
-
Felix Handte authored
Summary: This reduces contention on the synchronized stack in the `CompressionContextPool`, as well as potentially helping cache locality under heavy compression workloads. I have plans to make a singleton of this, and to use it in `folly::io::Codec` and some other places, so they all use the same contexts. Reviewed By: bimbashrestha Differential Revision: D18863824 fbshipit-source-id: 63c2f3dd0abe0aa4c88350767e9e77acb763c9a5
-
Giuseppe Ottaviano authored
Summary: `F14Vector{Map,Set}` have specified iteration order: inverse insertion order. When serialized, however, the order does not round-trip (in fact, it flips). This diff introduces an extension point to specify the iteration order for serialization, and it specializes it for F14 to make the iteration order round-trip. Reviewed By: vitaut Differential Revision: D17108774 fbshipit-source-id: 466b746baacff861242729bfa62447c138094cee
-
- 11 Dec, 2019 2 commits
-
-
Andrii Grynenko authored
Reviewed By: yfeldblum Differential Revision: D18926899 fbshipit-source-id: d16c1b5b54a75fe70514f25b648de70ae66b6415
-
Yedidya Feldblum authored
Summary: [Folly] Define support macro in all branches v.s. as a fallback for style. Differential Revision: D18900489 fbshipit-source-id: 9f9cb3c70889c8d6800070221bd8fe9ce091745c
-
- 10 Dec, 2019 3 commits
-
-
Lee Howes authored
Summary: Stub interface for logging functions to integrate with the GlobalExecutor and Futures. Reviewed By: andriigrynenko Differential Revision: D18229089 fbshipit-source-id: ad57de08a8bd6a80e2d0af9a9792de86a8267176
-
Lukasz Piatkowski authored
Summary: This should fix the Travis CI builds. It adds rust toolchain support inside docker and sets the required THRIFT env variable. Pull Request resolved: https://github.com/facebookexperimental/rust-shed/pull/3 Reviewed By: krallin Differential Revision: D18905608 Pulled By: lukaspiatkowski fbshipit-source-id: 5db1eff6f215a6617d8acaa0c99a62d45225956b
-
Yedidya Feldblum authored
Summary: [Folly] Helper variable templates for tuple applicability traits: `is_applicable_v`, `is_applicable_r_v`, `is_nothrow_applicable_v`, `is_nothrow_applicable_r_v`. Reviewed By: lewissbaker Differential Revision: D18746853 fbshipit-source-id: 9d01b24030f95ab5b4963660dc4ef471b5e0ad02
-
- 09 Dec, 2019 5 commits
-
-
Dan Melnic authored
Summary: Add support for io_uring based EventBase backend Reviewed By: kevin-vigor Differential Revision: D18682173 fbshipit-source-id: d6e02879e2b493680caaa3097d75970d0b5d7d07
-
Anirudh Ramachandran authored
Summary: Helps test resumption failure/success in other tests that use AsyncSSLSocketTest classes. Reviewed By: mingtaoy Differential Revision: D18561383 fbshipit-source-id: 29852ede80ecd59f662f536368ce2efe7d26745d
-
Keith Birney authored
Summary: This fixes a timing issue that has been observed in rare cases under very heavy load. Differential Revision: D18875069 fbshipit-source-id: cd47abfbd01c10e2568693f876dd3e6c2cb3bb24
-
Dan Melnic authored
Summary: Add support for setting a zerocopy enable function Reviewed By: kevin-vigor Differential Revision: D18579527 fbshipit-source-id: dc3ab7bb13b26528bc964c7eb616517e444487a4
-
Zoltán Gilián authored
Summary: To enable building with -Werror,-Wundef. Reviewed By: guangyfb Differential Revision: D18850905 fbshipit-source-id: 95555781fec991eac119c95a6a6cd7751b5ba742
-
- 07 Dec, 2019 1 commit
-
-
Michael Lee (Engineering) authored
Summary: When compiling each file individually, bring the includes closer as they are referenced (e.g., rely less on transitive includes and include what you use) Reviewed By: bithree Differential Revision: D18864197 fbshipit-source-id: 24adef418fd2eb944aa283a55411ec5a7c6f549b
-
- 06 Dec, 2019 5 commits
-
-
Pavlo Kushnir authored
Summary: Currently if compiler decides to inline fiber function, we'll end up allocating variables on fiber stack even though we use `runInMainContext`. Reviewed By: andriigrynenko Differential Revision: D18842065 fbshipit-source-id: 847c4f95c44ef49f5c7537af878ca8340f2b7b16
-
Adam Simpkins authored
Summary: Update the getdeps builders to save all command output to a log file in the build directory. This makes it easier to go back after the fact and look at the config options selected by the build run. Reviewed By: wez Differential Revision: D18777059 fbshipit-source-id: 86d3ffa48ec992fe90c59a3835e18f08310ed88c
-
Maged Michael authored
Summary: Add check for `__cpp_lib_atomic_is_always_lock_free` for using `is_always_lock_free`. Reviewed By: davidtgoldblatt Differential Revision: D18827013 fbshipit-source-id: 796d1ce3c279a807198897c092464dc3aff734e3
-
Michael Lee (Engineering) authored
Summary: `folly/portability/Config.h` serves this purpose now. Clean up references Reviewed By: Orvid Differential Revision: D18800127 fbshipit-source-id: 8e1300af74d63f028b83f5e2d8963a674e77e573
-
Lukas Piatkowski authored
Reviewed By: mitrandir77 Differential Revision: D18850917 fbshipit-source-id: f211dfbfadf4b5b0cb372cf8aeb9a232c4b3a739
-
- 05 Dec, 2019 2 commits
-
-
Yedidya Feldblum authored
Summary: Pull Request resolved: https://github.com/facebook/folly/pull/1273 [Folly] Skip some `is_constexpr_default_constructible` tests under gcc7. In gcc7 specifically, i.e. not gcc6 and not gcc8, some of the expectations fail. The compiler is wrong and this affects the outcome of `is_constexpr_default_constructible`, but this is mostly harmless as far as existing uses go. Fix the tests by skipping them when using gcc7. Reviewed By: vitaut Differential Revision: D18820312 fbshipit-source-id: a2d0d53ed2716fffba7840e2b167e9ad4ac012ff
-
Yedidya Feldblum authored
Summary: [Folly] Add `kGnuc` C++ constant representing `__GNUC__` preprocessor constant. Reviewed By: vitaut Differential Revision: D18827910 fbshipit-source-id: 43e07e12017df1e7cf4d6a5747e7a85d8a7616f3
-