Commit Graph

1174 Commits (4bc96d16c2e001ec0aaadfa4379c2e79bce6e7f7)

Author SHA1 Message Date
Guillaume Smet d415ba8353 Add @Override annotation where needed.
Starting with Java 6, we can annotate with @Override a class method implementing
a method from an interface.
11 years ago
Brett Wooldridge b4510a50c0 Retire acquireIncrement and acquireRetryDelay properties. 11 years ago
Brett Wooldridge 362be9d29d Javadoc and annotations. 11 years ago
Brett Wooldridge 3295443e9b Clean-up and tighten-up of code. 11 years ago
Brett Wooldridge d8bc281902 Fix incorrect incrementation of totalConnections when there is a retry. It should only be incremented on the first time through the loop. 11 years ago
Brett Wooldridge 2112a3470e Fix typo. 11 years ago
Brett Wooldridge 87868ca67b Update copyright. 11 years ago
Brett Wooldridge c2405e0423 Avoid unnecessary initialization of local variable. 11 years ago
Brett Wooldridge d8126eca81 Add support for DriverManager and JDBC URL-based pool configuration. 11 years ago
Brett Wooldridge af6a7dd430 Add support for DriverManager and JDBC URL-based pool configuration. 11 years ago
Brett Wooldridge 6637690f0d Add to property to control whether internal pool queries are isolated in their own
transactions or not.
11 years ago
Brett Wooldridge f1d8d9cfc5 Only set the readOnly() flag at initial construction if it is set to `true` by default. 11 years ago
Brett Wooldridge 5765ed2116 Javadoc 11 years ago
Brett Wooldridge 6149affd88 Support setting a default readOnly state for connections. 11 years ago
Brett Wooldridge 582c7a5e5a Simplify the modifyProxyFactory() method. 11 years ago
Brett Wooldridge cea6ed453f Fix broken unit test 11 years ago
Brett Wooldridge 80d80e266f Simplify the setTransactionIsolation() method, perform the check in validate() 11 years ago
Brett Wooldridge 62c7bd2a93 Minor cleanup. 11 years ago
Brett Wooldridge 4c1bbf4d36 Minor cleanup. 11 years ago
Brett Wooldridge eab48c3a7c Add ramp-up/ramp-down test. 11 years ago
Brett Wooldridge 5e0f13dcd9 Log pool state (debug) at shutdown. 11 years ago
Brett Wooldridge f1e711892b Cleanup to prevent acquisition overruns. 11 years ago
Brett Wooldridge 9cc1eb9dc9 Cleanup to prevent acquisition overruns. 11 years ago
Brett Wooldridge 111fbc3b73 Fix max connection overrunning when saturated with getConnection() calls during benchmarking. 11 years ago
Brett Wooldridge d80d793457 ConcurrentBag optimizations. 11 years ago
Brett Wooldridge 23fcf89be4 More unit tests 11 years ago
Brett Wooldridge b82dec08b7 Use WeakReferences to avoid Tomcat ThreadLocal leak warning. 11 years ago
Brett Wooldridge d79198e23b Set/reset connection state at creation time and upon closing connections. 11 years ago
Brett Wooldridge a4b9769de9 Revert "Prevent connections from one pool from bleeding over to threads requesting connections from another pool (stored in ThreadLocal)."
This reverts commit 78e1569264.
11 years ago
Brett Wooldridge 78e1569264 Prevent connections from one pool from bleeding over to threads requesting connections from another pool (stored in ThreadLocal). 11 years ago
Brett Wooldridge 8e46211806 Copy state from config. 11 years ago
Brett Wooldridge 6865443ddf Make HikariDataSource inherit from HikariConfig for convenience. This is useful
for Spring configuration, for example, because properties can be set directly on
the datasource rather than constructing a separate object.
11 years ago
Brett Wooldridge 2bc5b57575 Add catalog to the hikari configuration and into the connection state reset code 11 years ago
Brett Wooldridge aea65f9ccb Delete performance benchmarks, they are now hosted as a separate github repository. 11 years ago
Brett Wooldridge a447e52fe8 Delete performance benchmarks, they are now hosted as a separate github repository. 11 years ago
Brett Wooldridge 63bcfe2cf0 Removed method not available in Java 6. 11 years ago
Brett Wooldridge c6d40199c5 Java 6 compatibility. 11 years ago
Brett Wooldridge 07d630de5a #39 Get rid of anonymous inner class in ThreadLocal as it might possibly trigger a warning in Tomcat. 11 years ago
Brett Wooldridge 83b88f675e Fix backfill test to match new pool behavior. 11 years ago
Brett Wooldridge 0aa7bc5a11 Pass default auto commit state into constructor. 11 years ago
Brett Wooldridge ebf68a7176 Remove unused methods from signature 11 years ago
Brett Wooldridge 008ea8af45 Remove auto commit reset in alive test (it is done in ConnectionProxy.close() now), change idle connection tracking so as to eliminate the need for counting awaiting threads. 11 years ago
Brett Wooldridge 6fdc137566 Make methods final, and reset auto commit in close() 11 years ago
Brett Wooldridge b634085633 Make methods final. 11 years ago
Brett Wooldridge d4e15d097e Move some connection state reset logic into ConnectionProxy.close() to avoid additional method invocation overhead. 11 years ago
Brett Wooldridge 947e787a15 Rollback auto commit optimization, it performed worse. 11 years ago
Brett Wooldridge 32eadc1d8c Improved FastStatementList 11 years ago
Brett Wooldridge 9848138faa Remove blank line 11 years ago
Brett Wooldridge 106d5cc27c Performance tweaks 11 years ago
Brett Wooldridge de4059c0cb Add close() method that is synonymous with shutdown(), add toString() that prints the datasource including the pool name. 11 years ago
Brett Wooldridge 5fc58a2306 Add another exception test 11 years ago
Brett Wooldridge fa26ccc719 Avoid error message on shutdown when MBeans are not registered. 11 years ago
Brett Wooldridge 8fd836e657 #37 add sybase exceptions 11 years ago
Brett Wooldridge b81c24d43c Javadoc, renaming, and cleanup. 11 years ago
Brett Wooldridge ef82b6bf35 Fix FastStatementList unit test failure. 11 years ago
Brett Wooldridge 6a8681bc70 Slightly cleaner fix for issue #35 11 years ago
Brett Wooldridge 142ae39059 javadoc. 11 years ago
Brett Wooldridge 07bc7b8916 Change default size from 16 to 32, and change growth factor from 4x to 2x. 11 years ago
Brett Wooldridge ff12869d4f Add a pool state log at timeout failure. 11 years ago
Brett Wooldridge 9f5ad18f20 Synchronization fixes. 11 years ago
Brett Wooldridge 5419073cea Minor cleanup and javadoc. 11 years ago
Brett Wooldridge 86c45dbf24 Refactored SpecializedConcurrentBag for efficiency, moved to util. 11 years ago
Brett Wooldridge 3c60b60257 Initialize the concurrent bag with an initial size. 11 years ago
Brett Wooldridge 51336d7c74 Cache the hashCode. 11 years ago
Brett Wooldridge 372f15f46e Merged changed from fwbrasil 11 years ago
Brett Wooldridge b2641afe7e Add license header and class-level javadoc. 11 years ago
Brett Wooldridge ce2d5a3141 Even more detailed log for broken connections 11 years ago
Brett Wooldridge 522717f885 New concurrent connection container (moved away from LinkedBlockingQueue and LinkedTransferQueue). 11 years ago
Brett Wooldridge de20a9e71c Merge commit '4bf148f6d07efb03acc495ff52f1fea9dca649e1' into dev
* commit '4bf148f6d07efb03acc495ff52f1fea9dca649e1':
  fix fast statement list overflow inconsistency
  Update README.md
  Update README.md
11 years ago
Flavio W. Brasil 4bf148f6d0 fix fast statement list overflow inconsistency 11 years ago
Brett Wooldridge e3a3a1ab3d Start of experimental implementation of a concurrent bag.
See http://geekswithblogs.net/simonc/archive/2012/03/26/inside-the-concurrent-collections-concurrentbag.aspx
11 years ago
Brett Wooldridge d403b01afa Readability improvement. 11 years ago
Brett Wooldridge 867fc03003 Added logging for broken connections. 11 years ago
Brett Wooldridge e39fc44ad9 Add log when pool is shutdown. 11 years ago
Brett Wooldridge ca526c2e87 Remove pool size. 11 years ago
Brett Wooldridge c9f4598e53 Add debug log message for connections returned to the pool broken. 11 years ago
Brett Wooldridge 2ecedd92ed Added configuration flags for fail-fast initialization and MBean registration. 11 years ago
Brett Wooldridge 555075adec Minor performance tweak. 11 years ago
Brett Wooldridge 0dada599f4 Try LinkedBlockingQueue. 11 years ago
Brett Wooldridge aeb8c91917 Changes to prevent over aggressive optimization by the JIT which was producing
incorrect benchmarking results.
11 years ago
Brett Wooldridge e0c216a4c0 Fix unit test failures. 11 years ago
Brett Wooldridge 2053fdc973 Remove unnecessary optimisation that the JIT will perform anyway. 11 years ago
Brett Wooldridge cffe33706a Remove unused import. 11 years ago
Brett Wooldridge 1ba9987902 Remove resultset wrapper 11 years ago
Brett Wooldridge 2fd99e655d Log exception message when a connection failure occurs 11 years ago
Sebastian Jaenicke 65010d9487 Unregister MBeans on pool shutdown 11 years ago
Brett Wooldridge f3c0feb15c Fixed #29 implement clean shutdown 11 years ago
Brett Wooldridge b566002c0e Fixed bug growing the size of the FastStatementList when the capacity is exceeded. 11 years ago
Brett Wooldridge 058b7f0e0e Rename methods, and cleanup. 11 years ago
Brett Wooldridge 95d3fbdf0b Add short-circuit to aliveness check if connection was used within the last second. 11 years ago
Brett Wooldridge d4caabaa13 More testy stuff. 11 years ago
Brett Wooldridge d417886365 Fixed iteration direction bug, forgot we were iterating backwards. 11 years ago
Brett Wooldridge 069713c94f Use execute() instead of executeQuery() for initSql. 11 years ago
Brett Wooldridge 9021e7178d Fix isolation level dirty detection logic. 11 years ago
Brett Wooldridge eda62f7442 Correct property name. 11 years ago
Brett Wooldridge 94aa31510f Add the ability for the user to customize Connections before they are added to the pool. 11 years ago
Brett Wooldridge a752582368 Implement proper connection unwrapping. 11 years ago
Brett Wooldridge 56e97a8e3c No need to wrap methods that do not throw SQLException with our own try…catch checkException() logic. 11 years ago
Brett Wooldridge b388227dc4 Added query timeout to test query. 11 years ago
Brett Wooldridge 128b169f99 Remove unnecessary casts in the generated proxies. 11 years ago
Brett Wooldridge 352a269ad8 Replace bound check with try..catch it is faster in the nominal case. 11 years ago
Brett Wooldridge 8b440dd79c Track current transaction isolation level so that we can reset it only when necessary (as it often requires a round trip to the server). 11 years ago
Brett Wooldridge 430dd730e7 Demote error log to warn. 11 years ago
Brett Wooldridge 395035b5f5 Conditionally reset the transaction isolation level based on whether the user has altered it or not. Turns out it is expensive for some databases. 11 years ago
Brett Wooldridge c6b8d488a4 Conditionally reset the transaction isolation level based on whether the user has altered it or not. Turns out it is expensive for some databases. 11 years ago
Brett Wooldridge 04aa65a6d8 Replace ConnectionProxy’s ArrayList<Statement> with a custom class (FastStatementList), replace the singleton generated JavassistProxyFactory with a class that has static methods (so we get invokestatic rather than invokeinterface) in bytecode. 11 years ago
Brett Wooldridge 4a6eb29043 Use our own list implementation which does not do bounds checking, among other optimizations. 11 years ago
Brett Wooldridge a754c87c8a Micro optimization, avoids unnecessary assignment. 11 years ago
Brett Wooldridge 93fd7d7330 Fixed #27 set the isClosed flag earlier in the close() method, it was meant to short-circuit the unregisterStatement() call, but was moved later, which broke that behavior. 11 years ago
Brett Wooldridge 7235091496 Comment #25 added additional warning if both dataSource and dataSourceClassName are specified. 11 years ago
Brett Wooldridge 3861c17b40 Increate timing window to avoid time-sensitive failures in unit tests on slow machines (travis-ci) 11 years ago
Brett Wooldridge 1ed2153ab1 Increate timing window to avoid time-sensitive failures in unit tests on slow machines. 11 years ago
Brett Wooldridge ccc2989c72 Remove unused import. 11 years ago
Brett Wooldridge 970e3a5092 Increate timing window to avoid time-sensitive failures in unit tests on slow machines. 11 years ago
Brett Wooldridge e35c939ed2 Allow setting the dataSource directly on the HikariConfig. 11 years ago
Brett Wooldridge 137c76e589 Restructured pom after removal of instrumentation. 11 years ago
Brett Wooldridge add7af4915 Split HikariCP into two modules: core and agent. 11 years ago
Brett Wooldridge b5101d5e18 Start of rework of instrumentation to support shading. 11 years ago
Brett Wooldridge a326b66457 Set Thread context class loader, fixes issue with Bukkit plugin class loader (and probably other application server class loaders). 11 years ago
Brett Wooldridge 9e74d4c7a3 Try to use our own classloader (the one that loaded the proxy factory itself) in the class pool. 11 years ago
Brett Wooldridge 292aee2efb Compose the package and class names to support jar shading. 11 years ago
Brett Wooldridge e88cfcddfe documentation and code simplification. 11 years ago
Brett Wooldridge d6d2bc8eac JavaDoc 11 years ago
Brett Wooldridge 89a475af14 documentation and dead code removal 11 years ago
Brett Wooldridge 84c1474e4d JavaDoc 11 years ago
Brett Wooldridge fbb3e88788 Improve statement tracking. 11 years ago
Brett Wooldridge 7e17dc3d9e Added HSQLDB to instrumentation codex. 11 years ago
Brett Wooldridge 33093708e0 Derby net client added to codex. Also commented out Java 8 classes until we
figure out how to annotate the codex for java version-specifics.
11 years ago
Brett Wooldridge e1abe3bbf7 Set instrumentation flag in benchmark … mostly just so it’s easy to set and unset during testing. 11 years ago
Brett Wooldridge 7c8d8d071e Make sure to wrap/inject all ResultSets and set the parent _statement otherwise we get an
NPE in _checkException() which needs to bubble-up to the Statement level.
11 years ago
Brett Wooldridge 7d066aa63e Add missing ResultSet classes to codex for PostgreSQL. 11 years ago
Brett Wooldridge e12d84ed82 Use flag to avoid recursive close() calls (encountered in MariaDB). 11 years ago
Brett Wooldridge e621a55d4a Don’t add try..catch to static methods 11 years ago
Brett Wooldridge 51fce05ffc Add MariaDB to codex. 11 years ago
Brett Wooldridge 66a6e8052f Simplify classes by creating an inheritance hierarchy of the JDBC classes. 11 years ago
Brett Wooldridge dea09c0654 Add option to disable instrumentation. 11 years ago
Brett Wooldridge cc9ce4f874 Additional JDBC drivers added to codex. 11 years ago
Brett Wooldridge 560f6d4fd0 Merge branch 'dev' of https://github.com/Brizth/HikariCP into Brizth-dev 11 years ago
Brett Wooldridge 83fcef54f9 Reenable 11 years ago
Brett Wooldridge 39f74267ac Mildly more realistic stubs. 11 years ago
Brett Wooldridge 60601d4b61 Reduce casting and unnecessary delegation. 11 years ago
Brett Wooldridge 28cbc5048f More work on codex based instrumentation. 11 years ago
Antti Lampinen 63d67dfa19 Fixed an invalid timeout in java.sql.Connection.isValid call 11 years ago
Brett Wooldridge 28993fd439 Change to instrumentation classes specified in a codex file. Trying to deduce which
classes to instrument via reflection is futile given the bizarre class hierarchies of some
drivers.
11 years ago
Brett Wooldridge 8b651d8b78 Refactor experiment. 11 years ago
Brett Wooldridge 2bf2269606 Start development on new instrumentation. 11 years ago
Brett Wooldridge 81e4e8ffb3 Temporarily disable test. 11 years ago
Brett Wooldridge b905393bb7 Handle inheritance hierarchies better. 11 years ago
Brett Wooldridge 315d09d62f More tests 11 years ago
Brett Wooldridge a2485dfa26 Add more connection pools for testing. 11 years ago
Brett Wooldridge 831c1b8f5d command line parameters. 11 years ago
Brett Wooldridge 5e4cf64909 Change checkClosed() method from private to protected for access by Javassist proxies. 11 years ago
Brett Wooldridge 2db908d177 Remove unused class. 11 years ago
Brett Wooldridge 7560ee2308 Remove unnecessary delegation. 11 years ago
Brett Wooldridge fc08920d6f Add checkClosed() call to generated Connection proxy methods. 11 years ago
Brett Wooldridge a70c02b2f4 More JIT warmup. 11 years ago
Brett Wooldridge 5326e543e7 Correctness 11 years ago
Brett Wooldridge abadd6723a Fixup null check 12 years ago
Brett Wooldridge 8fcbc29ce9 Remove experimental code. 12 years ago
Brett Wooldridge 615a74aace change variable name for clarity 12 years ago
Brett Wooldridge 524cea67a0 remove inheritance 12 years ago
Brett Wooldridge a1871abb14 make final 12 years ago
Brett Wooldridge f0f1f1409e Change factory/constructor signature 12 years ago
Brett Wooldridge 52dec2f2f5 Method shrinkage to try to get below inline threshold. 12 years ago
Brett Wooldridge a2eee447b2 More performance tweaks. 12 years ago
Brett Wooldridge 69a6ff2fb5 Inject try catch 12 years ago
Brett Wooldridge 7233f21a1c Remove connection url, it is a DataSource property 12 years ago
Brett Wooldridge d20695c2da Minor tweaks 12 years ago
Brett Wooldridge 53376d601e Eliminate some unneeded casts. 12 years ago
Brett Wooldridge c69e18265e Fix datasource path after package change. 12 years ago
Brett Wooldridge 1f013c3f09 Refactor to allow injection of proxy code into JDBC classes from the user's driver. 12 years ago
Brett Wooldridge 0b58689069 Package refactor. 12 years ago
Brett Wooldridge 99a3416bd3 Temporarily disable instrumentation during development. 12 years ago
Brett Wooldridge 1f5ab6c149 Fleshing out the instrumentation agent. 12 years ago
Brett Wooldridge 8a3643d634 More work on class transformer 12 years ago
Brett Wooldridge 640321b9ac Use stub data sour e 12 years ago
Brett Wooldridge 648bef1bbe Moved stubs to mock package 12 years ago
Brett Wooldridge cf1f1286b0 Class transformer 12 years ago
Brett Wooldridge 76c9f95573 Remove unused import 12 years ago
Brett Wooldridge c2e939f345 Add a benchmark using hsqldb 12 years ago
Brett Wooldridge 805e65b969 Streamline inheritance and proxy generation. 12 years ago
Brett Wooldridge a6b27ef2a3 Add auto commit setting, and population of driver properties. 12 years ago
Brett Wooldridge 9ddc7dbc16 Add test 12 years ago
Brett Wooldridge 4abc12452b Rename benchmark 12 years ago
Brett Wooldridge 76ca46a90f Fixed javadoc 12 years ago
Brett Wooldridge cd66ddf269 Fix pool fill error when acquire increment is greater than min pool size. 12 years ago
Brett Wooldridge 6e72f1e426 Detect broken connection via SQLException 12 years ago
Brett Wooldridge 87f8b663a6 Code comments 12 years ago
Brett Wooldridge ece25c4c83 Code comments 12 years ago
Brett Wooldridge 93e88d758b more proxy cleanup 12 years ago
Brett Wooldridge 494ea84b86 Move to ClassLoaderUtils to new package 12 years ago
Brett Wooldridge 47b3556c4f Move to ClassLoaderUtils to new package 12 years ago
Brett Wooldridge 6855b82c8a Move to new package 12 years ago
Brett Wooldridge c22d680224 Remove unused code from proxies since cglib and java.lang.Proxy support was removed. 12 years ago
Brett Wooldridge 328017bb43 Repackaging 12 years ago
Brett Wooldridge c967f3778d API renames. 12 years ago
Brett Wooldridge 0fecb47354 Fix idle timeout bug. 12 years ago
Brett Wooldridge 8b0911baab Add MBean support. 12 years ago
Brett Wooldridge 169bba9a58 Set the minimum pool size to the max / 2 12 years ago
Brett Wooldridge cd2c769303 Remove java proxy factory ... only support javassist. 12 years ago
Brett Wooldridge 2eb52b06b0 Switch from add() method to put() method. 12 years ago
Brett Wooldridge 96578be6fd Remove cglib 12 years ago
Brett Wooldridge c965656643 Switch from HashSet to ArrayList for tracking statements. 12 years ago
Brett Wooldridge 1ab5c8fde7 Uncomment benchmarks. 12 years ago
Brett Wooldridge 7f76e3b833 Clear the tracking statements before we do anything that might throw an exception. 12 years ago
Brett Wooldridge 72d3d38af6 Add code to trap SQLExceptions and call a checkException() method. 12 years ago
Brett Wooldridge 03a44b7ab5 During getConnection() only try to fill the pool when it is empty. 12 years ago
Brett Wooldridge 4dd5d75bac Default jdbc4 isValid() connection validation method to true. 12 years ago
Brett Wooldridge f50c652329 Delete unused class. 12 years ago
Brett Wooldridge 3c264938c6 Use nanoTime() it is more accurate on some platforms. 12 years ago
Brett Wooldridge b81c8ba8bc Start of work to allow loading from a Properties file. 12 years ago
Brett Wooldridge 92bea1ddaa Add idle time-out handling, max lifetime handling, and connection leak detection. 12 years ago
Brett Wooldridge 04199ba9f4 Fixed the average execution time calculation. 12 years ago
Brett Wooldridge 6a46daa7c9 Change named of some getter/setters 12 years ago
Brett Wooldridge 403ca5f916 Add one more warm up run. 12 years ago
Brett Wooldridge 7b123e7e52 Enhance benchmark 12 years ago
Brett Wooldridge 65c27de32d Restore wrapped ResultSets 12 years ago
Brett Wooldridge a3196b1a03 Benchmark and tuning. 12 years ago
Brett Wooldridge 47268a5213 Benchmark and tuning. 12 years ago
Brett Wooldridge 95905042b5 Start of a benchmark 12 years ago
Brett Wooldridge 21fe1b4439 Fix up the mock datasource 12 years ago
Brett Wooldridge 44f986a972 Fix statement tracking 12 years ago
Brett Wooldridge 052446ca53 Use Thread.currentThread().getStackTrace() instead of creating a Throwable. 12 years ago
Brett Wooldridge fdbdc025a0 initial commit 12 years ago