- 10 Sep, 2015 4 commits
-
-
Mark McDuff authored
Summary: Exit synchronization is the worst! The worst! Reviewed By: @bmaurer Differential Revision: D2253073
-
Giuseppe Ottaviano authored
Summary: This diff introduces a few breaking API changes to both EliasFanoReader and BitVectorReader in order to fix some inconsistencies: - As initalized, `EliasFanoReader` and `BitVectorReader` held a value of `0`, thus if `0` is present in the list `skipTo(0)` would not update the position to `0`, as it happens with any other `skipTo(<first element>)`. This fixes `jumpTo` accordingly. - `jump(i + 1)` would go at position `i`. Now `reader.jump(i)`'s postcondition is `reader.position() == i`. - It is now illegal to retrieve `value()` from a reader in an out-of-bounds position (before-the-begin or past-the-end). Validity of a reader can be checked with `valid()`. Reviewed By: @philippv Differential Revision: D2420023
-
Elliott Clark authored
Summary: Promise<T> has isFulFilled. This patch adds the corresponding functionality to shared promise. Reviewed By: @jsedgwick Differential Revision: D2417631
-
Lucian Grijincu authored
Summary: This works: std::vector<T*> v; std::vector<std::unique_ptr<T>> uv(v.begin(), v.end()) Make it work for small_vector as well. Reviewed By: @ot, @Gownta Differential Revision: D2426919
-
- 09 Sep, 2015 3 commits
-
-
Eugene Pekurovsky authored
Summary: 1) Added uniform interval distribution functionality. 2) Added a generic API for custom interval distribution algorithms. 3) Fixed an issue with removing a canceled function. 4) Did some code cleanup along the way. Reviewed By: @kaanb Differential Revision: D2339911
-
Tom Jackson authored
Summary: It's easy to accidentally pass a negative value to ##take()##, which leads to underflow on conversion to ##size_t##. Reviewed By: @rosephilip, @philippv Differential Revision: D2421459
-
Yedidya Feldblum authored
Summary: [Folly] Drop support for GCC < 4.8 in folly/Conv.h. Can't stay indefinitely backcompat with older compilers. Reviewed By: @Gownta, @JoelMarcey Differential Revision: D2422369
-
- 08 Sep, 2015 5 commits
-
-
Yedidya Feldblum authored
Summary: [Folly] Drop support for GCC < 4.8 in folly/test/FBStringTest.cpp. Can't stay indefinitely backcompat with older compilers. Reviewed By: @tudor Differential Revision: D2422425
-
Giuseppe Ottaviano authored
Summary: In some cases hinting the compiler about conditions that are guaranteed to be true can help it generate better code. For instance, remove unnecessary bound checks. Clang has `__builtin_assume` and on GCC we can simulate it with `__builtin_unreachable`, so better just abstract both into a function. Reviewed By: @philippv Differential Revision: D2419937
-
Orvid King authored
Summary: Because MSVC would try to calculate the mmapLength as a long value, which isn't correct, and MSVC issues multiple warnings if you try to do it. Closes #289 Reviewed By: @yfeldblum Differential Revision: D2419061 Pulled By: @JoelMarcey
-
Tom Hughes authored
Summary: Needed for boost 1.59.0 which added this as a pure virtual function in the value_semantic base class. Fixes #314. Closes #315 Reviewed By: @yfeldblum Differential Revision: D2419035 Pulled By: @JoelMarcey
-
Christopher Dolan authored
Summary: Declaring `extern char** environ` in `experimental/TestUtil.cpp` fixes a compilation issue on OS X 10.10. Closes #311 Reviewed By: @yfeldblum Differential Revision: D2419037 Pulled By: @JoelMarcey
-
- 07 Sep, 2015 1 commit
-
-
Yedidya Feldblum authored
Summary: [Folly] Dead Code: GCC-v4.6 Back Compat: folly/Chrono.h Reviewed By: @philippv Differential Revision: D2419086
-
- 04 Sep, 2015 2 commits
-
-
James Sedgwick authored
Summary: was using the renamed/nonexistent makeTryFunction Reviewed By: @elliottneilclark Differential Revision: D2416178
-
Jason Evans authored
Summary: Fix MemoryIdler::flushLocalMallocCaches() to use the correct type when querying jemalloc's "opt.narenas" mallctl. Reviewed By: @jobenber Differential Revision: D2414309
-
- 03 Sep, 2015 1 commit
-
-
Brian Watling authored
Summary: Allow users to access the stack pointer and stack size Reviewed By: @alikhtarov Differential Revision: D2407252
-
- 02 Sep, 2015 2 commits
-
-
Sven Over authored
Summary: makeFutureWith executes a function and returns a future containing set to the function's return value. This diff adds a specialisation for the case when the function returns some type Future<T>. Instead of returning Future<Future<T>>, makeFutureWith now just passes on the future that the function returned, which may or may not have a value set at this time. In case the function throws, makeFutureWith returns a Future<T> containing the exception. With this diff, the following two lines produce equivalent results: auto f1 = makeFutureWith(func); auto f2 = makeFuture().then(func); except for the fact that f2 requires an additional temporary Future<Unit> to be created and destroyed. Reviewed By: @fugalh Differential Revision: D2388335
-
Haijun Zhu authored
Summary: Erasing Cpp2Worker happens in acceptor thread but when evb is destroyed and drains its callback queue, the callbacks may access the worker. This moves erasing Cpp2Worer to its own evb thread, after all callbacks are run. Reviewed By: @yfeldblum Differential Revision: D2398089
-
- 31 Aug, 2015 9 commits
-
-
Sara Golemon authored
-
Jason Evans authored
Summary: Universally update to jemalloc 4.0.0. Update MALLOC_CONF/malloc_conf configuration, and use the "arena.<i>.purge" mallctl (replaces "arenas.purge"). Reviewed By: @bmaurer Differential Revision: D2355602
-
Kyle Nekritz authored
Summary: Provide a folly interface for logging the client supported TLS signature algorithms. Reviewed By: @siyengar Differential Revision: D2374528
-
Sara Golemon authored
This reverts commit 37f45ee5 which should not have been pushed.
-
Sara Golemon authored
-
Michael Lee authored
Reviewed By: @sarals, @siyengar, @dpittman, @alephbax
-
Michael Morton authored
Summary: Contains only the central implementation of the TokenBucket, without moving other files to use the new implementation. Reviewed By: @yfeldblum Differential Revision: D2329892
-
Mainak Mandal authored
Summary: Projects depending on benchmark library fail to build with clang with the following error ``` ./folly/Benchark.h:263:16: error: inline asm not supported yet: don't know how to handle tied indirect register inputs ``` I am not an expert here, just tried to take an approach similar to the MSVC compiler clause Reviewed By: @andralex, @yfeldblum Differential Revision: D2368670
-
Yedidya Feldblum authored
Summary: [Folly] Fix the example for folly::static_function_deleter. The problem is that int BIO_free(BIO*) is not directly compatible. So have two examples. One using `RSA_free` which is compatible, and one making a compatible wrapper around `BIO_free`. Reviewed By: @Gownta Differential Revision: D2381125
-
- 25 Aug, 2015 2 commits
-
-
Sara Golemon authored
-
Maxim Georgiev authored
Summary: Recently default timeout logic was added to HHWheelTimer interface. This diff adds a unit test exercising this new logic. Reviewed By: @djwatson Differential Revision: D2376834
-
- 24 Aug, 2015 2 commits
-
-
Mark Isaacson authored
Summary: Don't automatically generate the main function for this test. Reviewed By: @Gownta Differential Revision: D2375814
-
Peter Griess authored
Summary: - Mark all methods in AsyncUDPSocket as virtual - Create new gmock AsyncUDPSocket: MockAsyncUDPSocket Reviewed By: @yfeldblum Differential Revision: D2370668
-
- 23 Aug, 2015 2 commits
-
-
Yedidya Feldblum authored
Summary: [Folly] Rename fixup from TDelayedDestruction to DelayedDestruction. Just affects comments. Reviewed By: @haijunz Differential Revision: D2373364
-
Yedidya Feldblum authored
Summary: [Folly] Rename fixup from TNotificationQueue to NotificationQueue. hg locate 'folly/**/*.{h,cpp}' | xargs perl -pi -e 's/TNotificationQueue/NotificationQueue/g' Reviewed By: @haijunz Differential Revision: D2373334
-
- 21 Aug, 2015 5 commits
-
-
Yedidya Feldblum authored
Summary: [Folly] static_function_deleter. So you can write this: using BIO_deleter = folly::static_function_deleter<BIO, &BIO_free>; auto buf = std::unique_ptr<BIO, BIO_deleter>(BIO_new(BIO_s_mem())); buf = nullptr; In place of this: struct BIO_deleter { void operator()(BIO* bio) { BIO_free(bio); } }; auto buf = std::unique_ptr<BIO, BIO_deleter>(BIO_new(BIO_s_mem())); buf = nullptr; Reviewed By: @alandau Differential Revision: D2364544
-
Jim Meyering authored
Summary: Running ./configure on Fedora 21 failed until I installed some more prerequisite packages. Add them to the list in README.md. Reviewed By: @markisaa Differential Revision: D2369708
-
Maxim Georgiev authored
Summary: Currently HHWheelTimer requires providing an explicit timeout value every time a new timeout is scgeduled. This change adds an optional "default timeout" parameter. With this parameter set, HHWheelTimer can be used the same way as AsyncTimeoutSet. Variable timeout functionality is still available even if the default parameter is set. Reviewed By: @djwatson Differential Revision: D2366783
-
Tom Jackson authored
Summary: Per Boris's report. Preparing to re-push this after fixing downstream errors. Reviewed By: @ot Differential Revision: D2361333
-
Jason Prado authored
Summary: clang-3.7 upstream warns that these calls prevent a copy elision (-Wpessimizing-move). Reviewed By: @mzlee Differential Revision: D2366951
-
- 20 Aug, 2015 1 commit
-
-
Andrey Obraztsov authored
Summary: BREAKING CHANGE! Deprecate Singleton::get() and replace it with Singleton::try_get() that return smart pointer that allows to manage lifetime of a reference and prevents it from being deleted if the reference is still in use Reviewed By: @chipturner Differential Revision: D2268791
-
- 19 Aug, 2015 1 commit
-
-
Kristen Parton authored
Summary: This reverts commit aee49bc8a945db9ad6c0ef6a9598ca5c44a4dc8c. Temporarily reverting the previous diff to investigate possible downstream regression. Reviewed By: @yfeldblum Differential Revision: D2359864
-