Skip to content


Subversion checkout URL

You can clone with
Download ZIP

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
This comparison is big! We’re only showing the most recent 250 commits
Commits on May 05, 2011
eaceaser fix database return c8eb9ed
Commits on May 06, 2011
eaceaser some more tests. 0d44e90
eaceaser first pass at idle timeout behavior. 62fadd3
eaceaser under further discussion, we should just reopen 1 connection at a time c49e79d
Commits on May 09, 2011
eaceaser use java.util.Timer instead of that PeriodicBackgroundProcess a1fe596
eaceaser rename simplepoolingdatabase to throttledpoolingdatabase fee3a43
eaceaser Simplify pool borrowing / repopulation logic. d466968
Commits on May 10, 2011
eaceaser simplify idle timeout logic significantly. 2f0b2a5
eaceaser conditional pool adds no longer need to return their success 4a29d0a
Commits on May 11, 2011
eaceaser revert to the mainline SNAPSHOT version. 2f5063a
eaceaser better configuration. e491f8f
eaceaser Merge branch 'timeout_connection_wait' 40cd6ef
eaceaser 2.0.2 9cfba22
eaceaser 2.0.3-SNAPSHOT abbaffe
eaceaser 2.1.0-SNAPSHOT 05a1ede
eaceaser 2.1.0 575e17a
eaceaser 2.1.1-SNAPSHOT 844e775
Commits on May 12, 2011
eaceaser we really dont need build.xml anymore. d4dff4e
eaceaser Fix DBCP Connection wrapping. New default for repopulate interval. 8693f25
eaceaser 2.1.1 c155670
eaceaser 2.1.2-SNAPSHOT d670d0a
eaceaser catch and handle exceptions in the timer thread 7843084
eaceaser 2.1.2 9fde52c
eaceaser 2.1.3-SNAPSHOT 8cceca0
Commits on May 13, 2011
Tina Huang update the version of util used by querulous 4b952c9
Commits on May 17, 2011
Ed Ceaser Merge pull request #14 from kmonkeyjam/master
update version of util
eaceaser fix deprecated eval and cglib version 99790fc
eaceaser 2.1.3 ae5926b
eaceaser 2.1.4-SNAPSHOT a2784e3
Commits on May 18, 2011
eaceaser use our own pool wrapper. 026beda
eaceaser 2.1.4 87cac12
eaceaser 2.1.5-SNAPSHOT 6649fff
Commits on May 19, 2011
eaceaser fix timeout timer thread so it cant die 148517d
eaceaser 2.1.5 9b2d936
eaceaser 2.1.6-SNAPSHOT 2ed37b2
Commits on May 25, 2011
eaceaser Merge branch 'master' into improved_stats
Commits on May 31, 2011
eaceaser querulous alpha d89e86d
Commits on Jun 02, 2011
eaceaser split up a block for consistency c807e21
eaceaser use a topical release name c47d122
eaceaser rev alpha1 snapshot b88a640
Commits on Jun 06, 2011
@freels freels add property fields to Database trait, for proxy configuration intros…
@freels freels move DaemonThreadFactory out of FutureTimeout 3d24074
@freels freels upgrade standard-project, narrow util deps 7bf6109
Ed Ceaser Merge pull request #17 from twitter/database_trait_improvements
Database trait improvements
@freels freels AsyncQueryEvaluator and AsyncDatabase traits and implementations.
- AsyncQueryEvaluator mirrors the normal QueryEvaluator trait, except
  all methods return a Future wrapped value instead.
- AsyncQueryEvaluator has one implementation, StandardQueryEvaluator
  that should cover most uses for now. It wrapps an AsyncDatabase object
  and a query factory.
- AsyncDatabase encapsulates wrapping the blocking jdbc API within a
  thread pool. Currently there is one implementation that wraps a normal
  Database implementation, so currently it's possible to reuse the
  connection handling logic querulous already has built up.
@freels freels 2.2.0-SNAPSHOT e39e01e
@freels freels README updates 33fe9bb
@freels freels org=com.twitter,name=querulous,version=2.2.0 c8773aa
@freels freels org=com.twitter,name=querulous,version=2.2.1-SNAPSHOT ae05bd7
Commits on Jul 05, 2011
@jjmmcc jjmmcc 2.3.0-SNAPSHOT eb9f4b4
@jjmmcc jjmmcc util 1.10.1 6ab3172
Jeremy Cloud Merge pull request #18 from twitter/util-1.10.1
Util 1.10.1
@jjmmcc jjmmcc org=com.twitter,name=querulous,version=2.3.0 e248473
@jjmmcc jjmmcc org=com.twitter,name=querulous,version=2.3.1-SNAPSHOT 932eb0e
Commits on Jul 20, 2011
eaceaser pool fast fail when empty e50bb26
eaceaser org=com.twitter,name=querulous,version=2.3.1 4293147
eaceaser org=com.twitter,name=querulous,version=2.3.2-SNAPSHOT f9b45d8
eaceaser Merge branch 'improved_stats'
Commits on Jul 21, 2011
eaceaser org=com.twitter,name=querulous,version=2.3.2 37890c2
eaceaser org=com.twitter,name=querulous,version=2.3.3-SNAPSHOT 5ce6937
Commits on Jul 28, 2011
eaceaser add a name to the db open timeout to start tracking which pool is timing
eaceaser make the timeouts configurable 5bcc87f
eaceaser Merge branch 'fix_throttled_pool' 63b34ca
eaceaser Add a config accessor / mutator a1b74a2
eaceaser org=com.twitter,name=querulous,version=2.3.3 4d20abf
eaceaser org=com.twitter,name=querulous,version=2.3.4-SNAPSHOT c588981
Commits on Aug 02, 2011
@hjz hjz up utl 1d76f32
@hjz hjz org=com.twitter,name=querulous,version=2.3.4 7c2b6b1
@hjz hjz org=com.twitter,name=querulous,version=2.3.5-SNAPSHOT c7eb6f6
yswu faked jdbc driver and its unit tests, integration tests based on fake…
…d jdbc driver for ThrottledPoolingDatabase, clean up unused imports
yswu Merge branch 'mock'
Commits on Aug 03, 2011
@johanoskarsson johanoskarsson Split Querulous into a core module and a tracing module to avoid addi…
…ng dependencies. Tracing module uses Finagle to log timings of queries
Commits on Aug 05, 2011
yswu change throttledpool watchdog task from timer task to a dedicated thr…
…ead waking up periodically, change default connection timeout to 100ms from 500ms
@hjz hjz up util fa0f7c9
Commits on Aug 08, 2011
yswu changed StatsCollector interface to allow adding gauges, changed Data…
…base interface to allow returning a collection of gauges, expose three gauges on ThrottledPoolingDatabse: num connections, idle connections, and num waiters for connections
@hjz hjz change interable 050b204
@hjz hjz revert build file 261af3a
@hjz hjz update marks 9c2856d
Commits on Aug 09, 2011
@freels freels Merge pull request #22 from twitter/allow-iterable
Allow iterable collections in an SqlQuery instead of Seq
@hjz hjz Change core project name 751cdd6
@hjz hjz change project name 9ccaab6
@hjz hjz Update util to 1.11.1 2812b07
@hjz hjz org=com.twitter,name=querulous,version=2.3.5 b1e88fc
@hjz hjz org=com.twitter,name=querulous,version=2.3.6-SNAPSHOT 96e87b5
@hjz hjz debug query change to Iterable b540fbd
@hjz hjz debug 278a1b8
@hjz hjz Sets test e46a61f
Commits on Aug 10, 2011
yswu prefix service name from query evaluator configuration to the gauges …
…for ThrottledPoolingDatabase to avoid potential name conflicts
Commits on Aug 11, 2011
@hjz hjz Merge pull request #23 from twitter/debug-query
Properly handle sets in SqlQuery. Change DebuggingQuery to match on Iterable.
@hjz hjz org=com.twitter,name=querulous,version=2.3.6 5a6efdf
@hjz hjz org=com.twitter,name=querulous,version=2.3.7-SNAPSHOT ce09be0
Commits on Aug 18, 2011
yswu Merge branch 'monit_ff' 0480159
yswu org=com.twitter,name=querulous,version=2.3.7 b8a0d6e
yswu org=com.twitter,name=querulous,version=2.3.8-SNAPSHOT 78aa0c4
Commits on Aug 22, 2011
yswu change StatsCollector.addGauge gauge parameter type from ()=>Double t…
…o =>Double
yswu org=com.twitter,name=querulous,version=2.3.8 1f1cb7e
yswu org=com.twitter,name=querulous,version=2.3.9-SNAPSHOT 20a1c76
Commits on Aug 26, 2011
@sprsquish sprsquish make driverName configurable ed65151
Commits on Aug 29, 2011
@sprsquish sprsquish make constant for default driver name. fix interfaces 1962e82
Commits on Aug 30, 2011
yswu expose innermost Database for DatabaseProxy and use that to appropria…
…tely expose gauges on innermost Database
Commits on Aug 31, 2011
yswu org=com.twitter,name=querulous,version=2.3.9 3931f1a
yswu org=com.twitter,name=querulous,version=2.3.10-SNAPSHOT 681d134
eaceaser safely construct pool if connection creation fails df6b91d
eaceaser log pool creation exception to stderr for now, until we inject logging
eaceaser Merge branch 'safe_pool_construction' b5b7e48
eaceaser org=com.twitter,name=querulous,version=2.3.10 10eea81
eaceaser org=com.twitter,name=querulous,version=2.3.11-SNAPSHOT 0bf19ab
Commits on Sep 01, 2011
@johanoskarsson johanoskarsson Upgrade to Finagle 1.9.0 in querulous-tracing 2ce6ab1
@johanoskarsson johanoskarsson Merge branch 'master' of 8f0b881
@johanoskarsson johanoskarsson org=com.twitter,name=querulous,version=2.3.11 1d6d747
@johanoskarsson johanoskarsson org=com.twitter,name=querulous,version=2.3.12-SNAPSHOT a648857
Commits on Sep 06, 2011
yswu dont expose gauges on ThrottledPoolingDatabase if serviceName is not …
yswu org=com.twitter,name=querulous,version=2.3.12 11352ee
yswu org=com.twitter,name=querulous,version=2.3.13-SNAPSHOT 0747c40
Commits on Sep 07, 2011
@sprsquish sprsquish Merge remote-tracking branch 'origin/master' into configrable_driver_…

Commits on Sep 09, 2011
@sprsquish sprsquish add signature for one host and a driverName 00a7e65
@sprsquish sprsquish Merge branch 'configrable_driver_name' f04c472
@sprsquish sprsquish org=com.twitter,name=querulous,version=2.3.13 530d95f
@sprsquish sprsquish org=com.twitter,name=querulous,version=2.3.14-SNAPSHOT 5d9177d
Commits on Sep 10, 2011
@freels freels unweird unit test 71c84f4
@freels freels failing integration test for throttled pooling database a068b13
@freels freels fix idle connection repopulation bug 6898c03
@freels freels Merge branch 'master' of c9f292b
@freels freels org=com.twitter,name=querulous,version=2.3.14 65fe54b
@freels freels org=com.twitter,name=querulous,version=2.3.15-SNAPSHOT b544f2b
Commits on Sep 26, 2011
@freels freels record connection class in connection destroying error 8117753
@freels freels org=com.twitter,name=querulous,version=2.3.15 68beeeb
@freels freels org=com.twitter,name=querulous,version=2.3.16-SNAPSHOT 7eab652
Commits on Sep 28, 2011
Tao Tao Bug fix in MemoizingDatabase - use all host names as the hash key 397cabd
Commits on Sep 29, 2011
Glen D Sanford add max waiters to BlockingDatabaseWrapper, so DB backup doesn't dest…
…roy the heap
Glen D Sanford use executor instead of atomic int f34199d
@freels freels Merge pull request #29 from taotaotw/master
Bug fix in MemoizingDatabase - use all host names as the hash key
Glen D Sanford change futurePool to workPool 87a654f
Glen D Sanford Merge branch 'master' into blocking_wrapper_max_waiters af736da
Glen D Sanford Merge pull request #30 from twitter/blocking_wrapper_max_waiters
Add max waiters to BlockingDatabaseWrapper, to better express back-pressure, so a DB backup doesn't blow up your heap.
Glen D Sanford 2.4.0-SNAPSHOT ca59a13
Glen D Sanford org=com.twitter,name=querulous,version=2.4.0 182ad77
Glen D Sanford org=com.twitter,name=querulous,version=2.4.1-SNAPSHOT 2006fe9
Commits on Oct 04, 2011
Glen D Sanford upgrade to latest util & finagle fb734cf
Commits on Oct 05, 2011
@freels freels Merge pull request #31 from twitter/util_1_11_18_finagle_1_9_2
upgrade to latest util & finagle
@freels freels org=com.twitter,name=querulous,version=2.4.1 ad90c12
@freels freels org=com.twitter,name=querulous,version=2.4.2-SNAPSHOT 289a896
Commits on Oct 10, 2011
@freels freels defaults stats collector for ostrich d47d9d5
@freels freels 2.5.0-SNAPSHOT eaadd50
@freels freels org=com.twitter,name=querulous,version=2.5.0 9f473f6
@freels freels org=com.twitter,name=querulous,version=2.5.1-SNAPSHOT 6d457b6
Commits on Oct 24, 2011
@freels freels flag on config to allow singleton factories per config object 28c1da9
Commits on Nov 09, 2011
Glen D Sanford update to latest finagle, remove explict promise creation 395eae9
@freels freels Merge pull request #32 from twitter/singleton_factories
flag on config to allow singleton factories per config object
@freels freels Merge pull request #33 from twitter/broken_promises
update to latest finagle, remove explict promise creation
@freels freels update util 5650b09
@johanoskarsson johanoskarsson Accept the new Tracer.Factory in TracingQueryFactory. 340f1b2
@freels freels Merge branch 'master' of 1d74fa5
@freels freels update mysql connector/j 213fad8
@freels freels svn artifact repo moved 1c1ecd7
@freels freels org=com.twitter,name=querulous,version=2.5.1 244879a
@freels freels org=com.twitter,name=querulous,version=2.5.2-SNAPSHOT 7e1cb6d
Commits on Nov 11, 2011
@freels freels use ensure to make sure connection is added back, fix MatchError 1bdff2d
Commits on Nov 14, 2011
@freels freels a test for BlockingDatabaseWrapper connection lifecycle management 8964b40
@freels freels workaround for broken util behavior, fix over-cancellation. c4c0510
Commits on Nov 15, 2011
@freels freels uncomment blocking wrapper debugs, since they are nice. Add notes to …
…db wrapper shenanigans
@freels freels feedback from yswu 7734dfd
Commits on Nov 17, 2011
@freels freels add stats to the async work pools at config time defba76
Commits on Nov 22, 2011
@johanoskarsson johanoskarsson Add shutdown methods to AsyncQueryEvaluator and AsyncDatabase. Can no…
…w release tracers properly
@freels freels remove extraneous imports 93bc8f0
@freels freels Merge branch 'tracingfix'
@freels freels 2.6.0-SNAPSHOT accc37c
@freels freels org=com.twitter,name=querulous,version=2.6.0 bca7de8
@freels freels org=com.twitter,name=querulous,version=2.6.1-SNAPSHOT 8dc1a94
Commits on Nov 29, 2011
@freels freels add stats to blocking database wrapper 5632941
@freels freels org=com.twitter,name=querulous,version=2.6.1 08b0646
@freels freels org=com.twitter,name=querulous,version=2.6.2-SNAPSHOT 8ffc139
@freels freels bump finagle and util 7f8001e
@freels freels expand on StatsCollector api 8e9d5af
@freels freels rip out bad util workarounds 730aeca
Commits on Nov 30, 2011
@freels freels org=com.twitter,name=querulous,version=2.6.2 5fcc64b
@freels freels org=com.twitter,name=querulous,version=2.6.3-SNAPSHOT d1fc21b
Commits on Dec 01, 2011
@freels freels report errors to log rather than stderr 1b5be24
@freels freels add back descrete promise creation 7610ae9
@freels freels util 1.12.6 and finagle 1.9.9 111b052
@freels freels org=com.twitter,name=querulous,version=2.6.3 6048aab
@freels freels org=com.twitter,name=querulous,version=2.6.4-SNAPSHOT 493832f
@freels freels import the MySQLConnection interface rather than the implementation 75be8b4
@freels freels org=com.twitter,name=querulous,version=2.6.4 2f0d94f
@freels freels org=com.twitter,name=querulous,version=2.6.5-SNAPSHOT 26a410f
Commits on Dec 02, 2011
@freels freels update util and finagle versions 9ea4757
@freels freels org=com.twitter,name=querulous,version=2.6.5 1d76188
@freels freels org=com.twitter,name=querulous,version=2.6.6-SNAPSHOT 65f1804
Commits on Jan 25, 2012
@jjmmcc jjmmcc latest finagle and util 28e4957
@jjmmcc jjmmcc 2.7.0-SNAPSHOT fc4b6fa
Commits on Feb 08, 2012
@johanoskarsson johanoskarsson Users can now add annotations to queries. These get passed along with…
… the queries as sql comments. Useful for finding the services or trace ids involved in long running queries.
@johanoskarsson johanoskarsson Remove lingering import. c985cd8
Commits on Feb 14, 2012
@freels freels Merge commit 'fc4b6fae3e768adcd15a4c9b6db787c1d6796d4f' f836684
@freels freels update to latest util and finagle f3c3712
@freels freels fix tracing for new finagle world 3bfd7de
@freels freels org=com.twitter,name=querulous,version=2.7.0 d4211d5
@freels freels org=com.twitter,name=querulous,version=2.7.1-SNAPSHOT 35022a5
Commits on Mar 09, 2012
Raghavendra Prabhu Add ability to pass to QueryFactory and DatabaseFactory in AsyncQuery…
…Evaluator apply()
Raghavendra Prabhu Add comments 0179a0d
Commits on Mar 14, 2012
Raghavendra Prabhu Add AsyncMemoizingDatabase c08e361
Raghavendra Prabhu Ensure all our threadpools are setup correctly 40e0e2d
Raghavendra Prabhu Merge pull request #42 from twitter/fix_threadpools
Ensure all our threadpools are setup correctly
Raghavendra Prabhu Incorporate review feedback fedad95
Raghavendra Prabhu Merge remote-tracking branch 'origin/fix_threadpools' 5403109
Commits on Mar 15, 2012
Raghavendra Prabhu Merge remote-tracking branch 'origin/master' into fix_checkoutpool b6a1e72
Raghavendra Prabhu Memoize AsyncDatabase 9053516
Raghavendra Prabhu Clean up bad collusion of call by name and factories, and a redundant…
… AsyncQueryEvaluator creation path
Raghavendra Prabhu Incorporate feedback 7d1be0a
Raghavendra Prabhu Merge pull request #43 from twitter/fix_checkoutpool
Memoize async databases to optimize checkoutPool creation + misc cleanup
Raghavendra Prabhu Bump version 0657416
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.2 254b424
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.3-SNAPSHOT d569326
Commits on Mar 19, 2012
Raghavendra Prabhu Don't pass QueryFactory by name - that's expensive 225ad81
Commits on Mar 21, 2012
Raghavendra Prabhu Merge pull request #44 from twitter/fix_querulous
Fix a call by name that causes tons of QueryFactory objects to be created
Raghavendra Prabhu Rewire async querulous to a much simpler model, eliminating the check…
…out pool, thereby saving on two context switches per request
Raghavendra Prabhu Fix a test 5e81ac4
Commits on Mar 22, 2012
Raghavendra Prabhu Better thread naming c61ad33
Raghavendra Prabhu Minor cleanup b24123e
Raghavendra Prabhu Implement open timeout enforcement in the new async querulous 3a667c2
Commits on Mar 23, 2012
Raghavendra Prabhu Fix timeout support f2bea7b
Raghavendra Prabhu Test updates 8247660
Raghavendra Prabhu Fix test, add a comment 4a59a6a
Raghavendra Prabhu More clarifying comments 3404caa
Raghavendra Prabhu Oops, forgot to uncomment some tests ef48dc8
@jjmmcc jjmmcc changes to allow mirroring in the birdcage, plus latest finagle and util 1aad34c
@jjmmcc jjmmcc merged master, resolved conflicts 0d17f70
Raghavendra Prabhu Incorporate review feedback d2645c5
Raghavendra Prabhu Add one more unit test 7f53804
Raghavendra Prabhu Merge pull request #45 from twitter/rm_checkoutpool
Re-implement async querulous to remove the need for the separate checkout pool.
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.3 5d73506
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.4-SNAPSHOT 7117b98
Commits on Mar 26, 2012
Raghavendra Prabhu Implement per-thread connection caching in BlockingDatabaseWrapper d8c4a16
Raghavendra Prabhu Fix a test, add a TODO 9fd6b89
Raghavendra Prabhu Add more stats to async querulous ceae991
Commits on Mar 27, 2012
Raghavendra Prabhu Add a comment 402df4c
Raghavendra Prabhu Merge pull request #47 from twitter/cache_connections
Implement per-thread connection caching in async querulous
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.4 a5a6032
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.5-SNAPSHOT 35407a1
Commits on Mar 28, 2012
@jjmmcc jjmmcc addressed pull request feedback 6d4c8fa
Jeremy Cloud Merge pull request #46 from twitter/birdcageable
changes to allow mirroring in the birdcage, building in CI, and using latest finagle and util.

everything should continue to work normally when not in the birdcage, but if there are any problems, just ping me!
Raghavendra Prabhu Add max waiters support to async workPool + introduce more stats for …
Commits on Mar 29, 2012
Raghavendra Prabhu Fix stats 7999187
Raghavendra Prabhu Add test for max waiters and open timeout a58d62f
Raghavendra Prabhu Incorporate code review feedback b338845
Raghavendra Prabhu Merge pull request #48 from twitter/add_max_waiters
Add ability to set max waiters on the async work pool and export better stats
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.5 c035d98
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.6-SNAPSHOT 8b02f75
Commits on Mar 30, 2012
Raghavendra Prabhu Add back a gauge that should not have been removed dc549c8
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.6 48e9c10
Raghavendra Prabhu org=com.twitter,name=querulous,version=2.7.7-SNAPSHOT c875c08