Commit Graph

23 Commits

Author SHA1 Message Date
Andrew Farmer
b5a305b5c1 Count rounds/fetches for profiling labels.
Summary:
This collects the highest round in which a label adds a fetch, as well as
number of fetches per label per datasource. It reports these, along with
aggregated values with scuba sample of profiling data.

Aggregation for number of rounds is the maximum round of label or any of
label's children. Aggregation for number of fetches is sum.

Reviewed By: simonmar

Differential Revision: D3316018

fbshipit-source-id: 152690c7b8811d22f566437675c943f755029528
2016-06-04 15:20:42 -07:00
Gergely Szilvasy
19b024634b resolve test runner conflict
Summary: We use a FB-specific test runner in fbcode. As a result currently tests/Main.hs is different on github to allow 'cabal test' to pass. This diff resolves the difference by creating a common list of tests and two separate entry points for running the tests: tests/Main.hs for internal use, and tests/TestMain.hs for github. tests/Main.hs will (eventually) be excluded from the public sources.

Reviewed By: simonmar

Differential Revision: D3371609

fbshipit-source-id: 46a7382df814687230db43136acd496d0c5ebca9
2016-06-02 06:44:43 -07:00
Gergely Szilvasy
c1638504d1 Add missing dependency in haxl.cabal
Summary: We use Data.Binary so the binary package is required for Haxl to build.

Reviewed By: niteria, kuk0

Differential Revision: D3365843

fbshipit-source-id: 4e1198a1d27dac91e6525fc163aaeb10f7a65972
2016-05-31 08:50:31 -07:00
Simon Marlow
32eeb6879a Update haxl.cabal
Summary: We added a new module

Reviewed By: JonCoens

Differential Revision: D2254852

fbshipit-source-id: 223af03aeea4c1d24e098be70108d31cf0b3bb67
2016-05-31 07:25:22 -07:00
Andrew Farmer
83f9fff80f Name MemoFingerprintKeys
Summary: Associate names with MemoFingerprintKeys. This adds two unboxed string fields to MemoFingerprintKey. (One for module name, one for feature name.) Each is a pointer to a statically allocated CString, which we can then turn into a Text for withLabel.

Reviewed By: simonmar

Differential Revision: D3257819

fbshipit-source-id: 6279103c0879
2016-05-31 06:11:23 -07:00
Simon Marlow
f09fc218c3 Merge branch 'master' of https://github.com/facebook/Haxl
* 'master' of https://github.com/facebook/Haxl:
  Try to compile with GHC 8.0.1
  Use hvr travis setup
  Update aeson and time
2016-05-23 10:36:40 +01:00
Simon Marlow
3c299cc1fd bump to 0.3.1.0 2016-05-23 10:36:23 +01:00
Oleg Grenrus
4e7e04140d Use hvr travis setup 2016-02-09 16:19:27 +02:00
Oleg Grenrus
63a57a2c43 Update aeson and time 2016-02-09 15:51:34 +02:00
Oleg Grenrus
419f602551 Add MonadThrow and MonadCatch instances 2015-10-29 18:18:59 +02:00
Oleg Grenrus
2a400204fb Lax upper bounds 2015-10-20 16:27:38 +03:00
Simon Marlow
037de9c594 Overhaul docs; bump to 0.3.0.0; add changelog
Summary: Tidy everything up in preparation for a Hackage reelase

Test Plan: cabal test; unit tests

Reviewed By: kjm@fb.com

Subscribers: anfarmer, kjm, jlengyel, watashi, smarlow, akr, bnitka, jcoens

FB internal diff: D2516904

Signature: t1:2516904:1444297290:52077660599ab126ec8a3e4530808db7c15d1876
2015-10-12 06:23:49 -07:00
Simon Marlow
2d37f76bd4 Add a benchmark for basic Haxl monad patterns
Summary:
I'm using this to test variants of the monad.  In particular, the
current monad displays O(n^2) performance with the seql version of
this benchmark. This is a well-studied problem, see for example

"Reflection without remorse: revealing a hidden sequence to speed up
monadic reflection" (van der Ploeg / Kiselyov, Haskell '14)

Test Plan:
Built it and ran it a few times
unit tests still work

Reviewed By: bnitka@fb.com

Subscribers: ldbrandy, kjm, jlengyel, memo, watashi, smarlow, akr, bnitka, jcoens

FB internal diff: D2419419

Signature: t1:2419419:1441640727:9f5f82212c829fcbf2e8c063d4dbd0db495b0ba2
2015-10-07 01:16:22 -07:00
Simon Marlow
dfd8a4655e A haxl test for ApplicativeDo
Summary:
Test that the ApplicativeDo extension batches things correctly in the
Haxl monad.

Test Plan: beholdunittests

Reviewed By: bnitka@fb.com

Subscribers: ldbrandy, memo, watashi, smarlow, akr, bnitka, jcoens

FB internal diff: D2039149

Tasks: 5504687

Signature: t1:2039149:1430501733:98fd1cf0f69663d6db3b07c3aed6e261ae9884d6
2015-10-07 01:06:35 -07:00
Simon Marlow
1d83953123 Add Haxl.Core.Memo 2015-10-07 00:59:28 -07:00
Philipp Kant
8f4d603dcd Close thunk leak in roundstats.
The function performFetches collects statistics about the requests
performed in each round. However, the list is not evaluated (unless
tracing is on), leading to an accumulation of thunks. Forcing the list
via deepseq prevents this.
2015-07-17 15:35:27 +02:00
Simon Marlow
6b1f7a69e9 0.2.0.0 (we've made backwards-incompatible changes) 2015-04-15 16:04:25 +01:00
Simon Marlow
19b3f63a4e 0.1.0.1 2015-04-15 16:00:54 +01:00
watashi
580aadb747 Unbreak haxl on ghc 7.10
Some ghc internal packages bumped their versions.
Thanks @FranklinChen for reporting this issue.
Closes #28
2015-04-09 23:03:26 -07:00
Zejun Wu
9f873ed35a Update haxl copyright headers
Summary:
Update haxl copyright headers: s/2014/2014-present/g
Thank @siddharthasharma for pointing this out
Closes #26, #27

Test Plan: meh

Reviewed By: jon.coens@fb.com

Subscribers: ldbrandy, memo, watashi, smarlow, akr, bnitka, jcoens

FB internal diff: D1903841

Signature: t1:1903841:1426073797:b95462075265fa8ec9c1252e45ef5cac7a37e7e2
2015-03-11 12:42:01 -07:00
Konstantine Rybnikov
dde76c9b3d Update aeson and text deps 2014-11-22 13:50:44 +02:00
Zejun Wu
7411284239 Update exposed-modules in haxl.cabal
Summary:
Haxl.Core.Env and Haxl.Core.Fetch were collapsed into Haxl.Core.Monad in
D1427283. Update haxl.cabal to reflect this and use PatternGuards to
suppress warnings.

Test Plan: ~/local/haxl-github $ cabal test

Reviewed By: jon.coens@fb.com

Subscribers: ldbrandy, smarlow, akr, bnitka, jcoens

FB internal diff: D1441939
2014-07-17 13:02:09 -07:00
Simon Marlow
74a3874f0b Initial open source import 2014-06-10 02:47:59 -07:00