- 25 Mar, 2015 4 commits
-
-
Sean Cannella authored
Summary: Calling getaddrinfo from a static constructor is not the most reliable thing to do. Stop doing it. Test Plan: existing tests Reviewed By: davejwatson@fb.com Subscribers: dancol, mzlee, shikong, kmdent, fma, bmatheny, benyluo, ranjeeth, folly-diffs@, jsedgwick, yfeldblum FB internal diff: D1924578 Tasks: 6534662 Signature: t1:1924578:1426718586:d73bc2f001095e66fa77fde9c027af050cc26d2a
-
Hannes Roth authored
Summary: I thought this might fix #6120972. But it doesn't. Still a bit of a cleanup in my opinion. Test Plan: Run all the tests? Reviewed By: hans@fb.com Subscribers: trunkagent, folly-diffs@, jsedgwick, yfeldblum FB internal diff: D1907259 Signature: t1:1907259:1426613567:9e33fe7e9e8a36ba006d4aee604086a56f128893
-
Andrey Goder authored
Summary: Sometimes we only want to log if enough time has passed, e.g. when logging inside of a loop doing work to detect if things are slow. Add an option for that. Test Plan: build and unit tests of folly/experimental Reviewed By: lesha@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1909055 Signature: t1:1909055:1426627731:6d3ad94fd71967ec89ffebc90cd2907dd1631d36
-
Alexey Spiridonov authored
Summary: Ooops during port ;) Test Plan: unit test Reviewed By: agoder@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1905639 Signature: t1:1905639:1426171227:a6e415046a85f098ac090f069476204fb0367c42
-
- 18 Mar, 2015 19 commits
-
-
Andre Azevedo authored
-
Nicholas Ormrod authored
Summary: Signed-off-by: Nicholas Ormrod <njormrod@fb.com> Test Plan: Clicked link, gtest started downloading Reviewed By: markisaa@fb.com Subscribers: sdwilsh, folly-diffs@, yfeldblum FB internal diff: D1901849 Tasks: 6255850 Signature: t1:1901849:1426097071:e887ed8749c70d5e15877082ac0175ce3b56647e
-
Praveen Kumar authored
Summary: BackoffTimeout disallow copy construction, copy assignment, move construction, move assignment, and default construction. Closes https://github.com/facebook/folly/pull/146 Test Plan: runtests Reviewed By: ldbrandy@fb.com Subscribers: lins, anca, folly-diffs@, yfeldblum FB internal diff: D1912521 Signature: t1:1912521:1426268413:6edb2d8203d1efd1e825816f03be115ac46e55ca
-
Praveen Kumar authored
Summary: It seems we might avoid temporaries. To do so we pass arguments directly to constructors with the help of emplace_back member. Test Plan: all folly/tests, make check for 37 tests, passed. Closes https://github.com/facebook/folly/pull/150 Reviewed By: ldbrandy@fb.com Subscribers: lins, anca, folly-diffs@, yfeldblum FB internal diff: D1912505 Signature: t1:1912505:1426268158:086882bb53f3d79c3f3b7b2c362318f09b5ee3be
-
Praveen Kumar authored
Summary: AsyncServerSocket disallow copy construction, copy assignment, move construction, move assignment, and default construction. Closes https://github.com/facebook/folly/pull/148 Test Plan: all folly/tests, make check for 37 tests, passed. Reviewed By: ldbrandy@fb.com Subscribers: lins, anca, folly-diffs@, yfeldblum FB internal diff: D1912488 Signature: t1:1912488:1426267982:a9690ce9429016f89630f0ded64b7be9ff80c39d
-
Alecs King authored
Summary: backslash Test Plan: tests Reviewed By: aap@fb.com Subscribers: folly-diffs@, yfeldblum FB internal diff: D1920872 Signature: t1:1920872:1426624366:c984fecb5bd0c292d5a8309fb320a48872fff6db Blame Revision: D1890511
-
Alecs King authored
Test Plan: unit tests Reviewed By: bwatling@fb.com Subscribers: stepan, folly-diffs@, yfeldblum, trunkagent, vikas, alikhtarov FB internal diff: D1890511 Tasks: 6311387 Signature: t1:1890511:1425924980:71af7c12a09a86b280dc3c9a9ef0756bf56bf639
-
Hans Fugal authored
Summary: Apparently `configure` creates this subdirectory and then the curl and unzip commands don't run, and then `make check` fails. Instead, do it if the zip file doesn't exist. Test Plan: git clone https://github.com/facebook/folly.git cd folly/folly /path/to/this/bootstrap-osx-homebrew.sh make make check Reviewed By: andrei.alexandrescu@fb.com Subscribers: exa, folly-diffs@, yfeldblum, davejwatson FB internal diff: D1882472 Signature: t1:1882472:1425920470:bdab25967d3b8e52c690d5627168077c65829b92
-
James Sedgwick authored
Summary: for consistency with exception and exception_ptr functions provided in String.h Test Plan: unit Reviewed By: vloh@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1905087 Tasks: 5961362 Signature: t1:1905087:1426101740:670ceab5140250bbecdd1247025d3d70b7774690
-
Jeroen Vaelen authored
Summary: Added folly::Future<T>::poll() function with the following semantics: poll() checks if the promise has been fulfilled, if so it will extract the value of the resulting Try<T> to construct a new Try<T> that is wrapped in an Optional<Try<T>>. If the promise has not been fulfilled an empty Optional is returned. Test Plan: Added two tests to SugarTest.cpp: one where the promise has been fulfilled and one where it hasn't. Reviewed By: hannesr@fb.com Subscribers: trunkagent, folly-diffs@, jsedgwick, arturg, yfeldblum FB internal diff: D1909480 Tasks: 6166875 Signature: t1:1909480:1426280247:6b239c0f1a15c25ce7664afb4bfb3899993c5775
-
Matt Dordal authored
Summary: Seems useful to do without passing in a totally custom queue. Makes the client code a bit simpler. Test Plan: used it, saw low memory usage and no crash Reviewed By: davejwatson@fb.com Subscribers: trunkagent, iaroslav, fugalh, folly-diffs@, jsedgwick, yfeldblum, slarsen FB internal diff: D1907874 Signature: t1:1907874:1426268010:3159ae339b51f5dbc7fe034644bbc968b92b072c
-
Naizhi Li authored
Summary: I will be using multi-buf UDP send soon, so adding the support in folly::AsyncUDPSocket Test Plan: Unit tests and turn server Reviewed By: davejwatson@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1907189 Signature: t1:1907189:1426266951:046198e0a009fef085ac7eb44f054c67dfb16ba3
-
Adam Simpkins authored
Summary: Add a helper method to efficiently check if the cursor is at the end of the IOBuf chain. This is equivalent to (cursor.totalLength() > 0), but it doesn't need to walk the entire chain just to tell if it is at the end or not. Test Plan: Updated the unit tests to contain some checks for isAtEnd(). Reviewed By: jasmeetbagga@fb.com Subscribers: trunkagent, doug, net-systems@, exa, folly-diffs@, yfeldblum FB internal diff: D1875345 Signature: t1:1875345:1425006512:49ac246fd0ac7937fdcd6cf1359a841f048c444e
-
Stepan Palamarchuk authored
Summary: This used to be protected before. Test Plan: folly/futures tests Reviewed By: andrii@fb.com Subscribers: trunkagent, folly-diffs@, jsedgwick, yfeldblum FB internal diff: D1907063 Signature: t1:1907063:1426116657:d7430304d5f72a048396e83f8dc6b5a92198fb29
-
Matt Dordal authored
Summary: By default, CPUThreadPoolExecutor uses 100 MB of rss for the CPU queue. This is substantially higher than expected. Reduce the default queue size so that it uses much less memory upfront, down to about 6 MB going by the heap profile. Reviewed By: davejwatson@fb.com Subscribers: mwa, ott, iaroslav, jrsherwood, aflock, slarsen, davejwatson, trunkagent, fugalh, folly-diffs@, jsedgwick, yfeldblum FB internal diff: D1900539 Tasks: 6453427 Signature: t1:1900539:1426103805:34fb7b081058fbde89370b5d9ec24ea572c4b0e2
-
Nathan Bronson authored
Summary: D1798929 broke the automake folly build Test Plan: 1. careful visual inspection 2. build Reviewed By: alikhtarov@fb.com Subscribers: folly-diffs@, yfeldblum FB internal diff: D1906281 Signature: t1:1906281:1426106340:621f1e7d2fb18ae2ec5dc604dea0d8ad4353486e
-
Nathan Bronson authored
Summary: SharedMutex is a reader-writer lock. It is small, very fast, scalable on multi-core, and suitable for use when readers or writers may block. Unlike most other reader-writer locks, its throughput with concurrent readers scales linearly; it is able to acquire and release the lock in shared mode without cache line ping-ponging. It is suitable for a wide range of lock hold times because it starts with spinning, proceeds to using sched_yield with a preemption heuristic, and then waits using futex and precise wakeups. SharedMutex provides all of the methods of folly::RWSpinLock, boost::shared_mutex, boost::upgrade_mutex, and C++14's std::shared_timed_mutex. All operations that can block are available in try, try-for, and try-until (system_clock or steady_clock) versions. Both reader-priority and writer-priority versions are provided. Writer-priority is the default at the moment. In my tests SharedMutex is as good or better than the other reader-writer locks in use at Facebook for almost all use cases, sometimes by a wide margin. (If it is rare that there are actually concurrent readers then RWSpinLock can be a few nanoseconds faster.) I compared it to folly::RWSpinLock, folly::RWTicketSpinLock64, boost::shared_mutex, pthread_rwlock_t, and an internal RWLock that uses spinlocks to guard its state and pthread_mutex_t+pthread_cont_t to perform blocking. (The other ReadWriteMutex-s I found use pthread_rwlock_t underneath.) It is generally as good or better than the rest when evaluating size, speed, scalability, or latency outliers. In the corner cases where it is not the fastest (such as single-threaded use or heavy write contention) it is never very much worse than the best. See the bottom of SharedMutexTest.cpp for lots of microbenchmark results. Test Plan: 1. new unit tests 2. new microbenchmarks included here 3. uncommitted microbenchmark from bmaurer's RWSleepLock 4. replace admarket's RWSpinLock and RWLock with SharedMutex, observe neutral adindexer perf in canary 5. replace multifeed's thrift ReadWriteLock with SharedMutex, observe neutral perf in canary Reviewed By: hans@fb.com Subscribers: fbcode-common-diffs@, tnovak, march, davejwatson, trunkagent, philipp, folly-diffs@, yfeldblum, bwatling, bmaurer, bol, marccelani, adri, strager, macsyz, dzhulgakov, zamsden FB internal diff: D1798929 Signature: t1:1798929:1425575976:1c9221317eaa47628a2b8c374f90c7a2d4e3f0f9
-
Adrian Hamza authored
Summary: Some unit tests owned by my team are failing due to segmentation fault in SingletonHolder<T>::registerSingletonMock -> SingletonHolder<T>::destroyInstance. Test Plan: Run folly unit tests and my unit tests. Reviewed By: henryf@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1873889 Signature: t1:1873889:1425925156:29d54092939d7e9debea3fd55f7105fd320e987e Blame Revision: 91f4942e
-
Andrey Goder authored
Summary: This is a validator for JSON schema (http://json-schema.org/) that works on folly::dynamic. Apparently there are no good open source ones for C++, especially not if you want to use folly::dynamic. I am going to use this to validate JSON configs. It supports basically everything from the standard, except for fetching schemas via http, and using id refs. It supports enough to check schemas against the metaschema. Currently you can define a schema that will crash on validation, if it's infinitely self-recursive. See the unit test case that reproduces this. Fixing this seems hard though, so I didn't bother. It would also probably be slower for normal usage. Test Plan: unit test Reviewed By: lesha@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1847657 Signature: t1:1847657:1425605163:635dc523aeda1b588c3634d0dc1a48d50a53db79
-
- 06 Mar, 2015 2 commits
-
-
Viswanath Sivakumar authored
-
Mark Isaacson authored
Summary: Remove unnecessary includes from FBVector Gonna see just how cleaned-up sandcastle really is :P Test Plan: Fix errors shown in contbuild Reviewed By: njormrod@fb.com Subscribers: cold-storage-diffs@, jcoens, ldbrandy, trunkagent, oleksandr, netego-diffs@, mmandal, weiyan, ws_dev_diffs, jmkaldor, jhunt, fbcode-common-diffs@, njormrod, folly-diffs@, yfeldblum FB internal diff: D1873145 Signature: t1:1873145:1425505591:9cb345053833afa70f543e2f7acd310ab80b8676
-
- 05 Mar, 2015 6 commits
-
-
Nicholas Ormrod authored
-
Dave Watson authored
Summary: Cleans up the httpserver startup code nicely. The only major change to ServerBootstrap was a check if bind failed to throw an exception. (depends on D1732895) Test Plan: fbconfig -r folly/wangle/bootstrap proxygen/httpserver; fbmake runtests fbconfig -r dfsrouter; fbmake runtests Reviewed By: hans@fb.com Subscribers: yfeldblum, cgheorghe, trunkagent, doug, fugalh, bmatheny, folly-diffs@, jsedgwick FB internal diff: D1800100 Signature: t1:1800100:1424733970:67a61a22d2affadea16d2fd725003915326077b2
-
Sara Golemon authored
-
Ram Kumar Rengaswamy authored
Summary: generate_escape_tables.py uses python range function which does not include the end of the range. Closes #131 Test Plan: See attached test case. Reviewed By: njormrod@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1871692 Signature: t1:1871692:1425076132:2438ab7554fe87bdef17c82ff27713811a270d7c
-
Nicholas Ormrod authored
Summary: D1845525 was missing some makefile changes. Test Plan: Examine similar change in D1732895 Reviewed By: markisaa@fb.com Subscribers: sdwilsh, folly-diffs@, yfeldblum FB internal diff: D1890197 Signature: t1:1890197:1425526255:e9a23fd96a89d4463cbdfda1385d4fd5f5781e8e
-
Hans Fugal authored
Summary: sugar providing `foo.move()` instead of `std::move(*foo)`. Test Plan: Inspection. Using it in another diff. Reviewed By: yfeldblum@fb.com, hannesr@fb.com Subscribers: trunkagent, exa, folly-diffs@, yfeldblum FB internal diff: D1882208 Signature: t1:1882208:1425331389:a9c09ad2739838c829e2afdad64e985810154226
-
- 03 Mar, 2015 9 commits
-
-
Alecs King authored
-
Subodh Iyengar authored
Summary: Add a test to check what will happen if someone tries to run a job on evb after termination. Test Plan: Unit tests Reviewed By: seanc@fb.com Subscribers: seanc, folly-diffs@, yfeldblum FB internal diff: D1882308 Signature: t1:1882308:1425333248:7ab6692eb0b866fcc9685048eb385bacd90023d1
-
Hans Fugal authored
Summary: Because why not? Test Plan: new unit tests Reviewed By: hannesr@fb.com Subscribers: trunkagent, exa, folly-diffs@, yfeldblum, marccelani FB internal diff: D1866123 Signature: t1:1866123:1425331395:742369597757456e5925af55c5d4198b607126f1
-
Sara Golemon authored
Summary: Use malloc_size() instead Test Plan: HHVM build on MacOS Reviewed By: joelm@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1875364 Signature: t1:1875364:1425061479:7d8cec757c186fa8c30b6500fca6b2fe4c1ed137
-
Dor Gross authored
Summary: Method will only be applicable for types of the form Future<Future<T>>, calling flatten() on a Future<T> where <T> != Future<R> for any <R> will result with a compile time error. Test Plan: Added tests in FutureTest.cpp. Reviewed By: hans@fb.com Subscribers: ldbrandy, trunkagent, folly-diffs@, jsedgwick, yfeldblum, icanadi FB internal diff: D1843581 Tasks: 6166903 Signature: t1:1843581:1424399517:7146924db3c238b77dd309f1d5916e44a7e81968
-
zhaokai authored
Summary: Make it clear that the variable is const Closes #139 Test Plan: authored tested, contbuild Reviewed By: markisaa@fb.com Subscribers: folly-diffs@, yfeldblum FB internal diff: D1878361 Signature: t1:1878361:1425071448:6871577ddb34f4a8dc30ea37842f9950c3825dde
-
zhaokai authored
Summary: 1. Split the original simple test 2. Add unit test of function: get_ref_default Closes #138 Test Plan: authored tested, contbuild Reviewed By: markisaa@fb.com Subscribers: folly-diffs@, yfeldblum FB internal diff: D1878603 Signature: t1:1878603:1425073330:914a2365fa648142d11b41b387423d78e52f2e08
-
zhaokai authored
Summary: Remove one of the "one" in the comment of BENCHMARK Closes: #140 Test Plan: Inspection. Reviewed By: markisaa@fb.com Subscribers: trunkagent, folly-diffs@, yfeldblum FB internal diff: D1877997 Signature: t1:1877997:1425063475:c53c09d105809de9a9070f464fb0571a4dd1e5d1
-
Dave Watson authored
Summary: Basically a ripoff of Dave's D1483148 but with ChannelPipeline instead of rx. There's going to be a long tail of unit tests here, this is still pretty broken... Not convinced that this is the way to go but I wanted to get a feel for what it would be like to plug it into an IRL system. I think the simplicity/clarity of the handler implementations and to some extent the pipeline spec is an improvement over the rx way but I'm less sure about everything else. Test Plan: compiles and kind of works some of the time but not really Reviewed By: alandau@fb.com Subscribers: wormhole-diffs@, mcduff, hitesh, doug, yfeldblum, folly-diffs@, jsedgwick, subodh, andrewcox, njormrod, trunkagent, fugalh, alandau, bmatheny, mshneer FB internal diff: D1618704 Tasks: 5981284 Signature: t1:1618704:1424980854:83c6193b1156be2ec65cf79f9f2ad1af670da7f8
-