https://github.com/voldemort/voldemort

sort by:
Revision Author Date Message Commit Date
95cd5e7 Removed old parent delegating code in StoreStats which would cause double counting. 09 August 2014, 00:16:19 UTC
b1e2024 Add test to make sure no spurious or skipy results are reported 07 August 2014, 21:05:29 UTC
ce7a802 Merge branch 'tehuti_metrics' of github.com:FelixGV/voldemort into tehuti_metrics 07 August 2014, 18:15:11 UTC
7a31c4e Upgraded to latest Tehuti, 0.4 07 August 2014, 18:14:40 UTC
b146907 Various fixes for the stats code... 07 August 2014, 18:14:40 UTC
c6dca8f Fixed bugs related to ClientSocketStatsTest... 07 August 2014, 18:14:40 UTC
03e41ed Fixed a problem with RequestCounter.getNumEmptyResponses(). It required a SampledTotal, not a SampledCount. 07 August 2014, 18:14:40 UTC
19d73e1 Fixed a problem in StoreStatsJmxTest where Tehuti's Max would return NEGATIVE_INFINITY. 07 August 2014, 18:14:40 UTC
c559529 Fixed a test in StatsTest to use the new RequestCounter API. 07 August 2014, 18:14:39 UTC
c8721c8 Initial commit of the Tehuti stats integration. Some unit tests are failing. Probably a few bugs need squashing... 07 August 2014, 18:14:39 UTC
9bc0a26 Skewed reporting 07 August 2014, 18:14:39 UTC
9e6232b Merge branch 'master' of https://github.com/voldemort/voldemort 07 August 2014, 18:14:02 UTC
0e9bcb2 Upgraded to latest Tehuti, 0.4 07 August 2014, 18:10:17 UTC
6cab7b1 C++ Client: bump maintenance version number. 07 August 2014, 04:33:55 UTC
e3c4375 Makes Store::get and Store::getName const functions. Also changes InconsistencyResolvingStore, RoutedStore and SocketStore implementations to be const. 07 August 2014, 04:33:55 UTC
559d202 C++ client: Changes VersionedValue::getVersion to return a const Version*. By returning a non-const Version*, the semantic const-correctness was broken. You could not modify the pointer, but that didn't matter. 07 August 2014, 04:33:54 UTC
45bc4ea C++ client: Adds VOLDEMORT_ prefix to all include guards. This should minimize conflicts with other libraries. 07 August 2014, 04:33:54 UTC
9f40015 Changes exception message in Cluster::getNodeById to use boost::format. The previous code would cause a segmentation fault if nodeId was greater than the string length, and the message now actually includes the ID. 07 August 2014, 04:33:54 UTC
a51f328 Changes Cluster constructor to take string by const reference. 07 August 2014, 04:33:54 UTC
5097158 Various fixes for the stats code... 06 August 2014, 00:49:12 UTC
54bf0e6 Fixed bugs related to ClientSocketStatsTest... 05 August 2014, 22:10:22 UTC
6c31b90 Fixed a problem with RequestCounter.getNumEmptyResponses(). It required a SampledTotal, not a SampledCount. 05 August 2014, 20:04:57 UTC
260e8bc Fixed a problem in StoreStatsJmxTest where Tehuti's Max would return NEGATIVE_INFINITY. 05 August 2014, 18:53:42 UTC
b0a1127 Merge branch 'tehuti_metrics' of github.com:FelixGV/voldemort into tehuti_metrics 05 August 2014, 01:52:26 UTC
ffbc377 Fixed a test in StatsTest to use the new RequestCounter API. 05 August 2014, 01:49:29 UTC
1bb7993 Merge branch 'sid_stats_test' into tehuti_metrics 05 August 2014, 01:44:25 UTC
624f3ce Initial commit of the Tehuti stats integration. Some unit tests are failing. Probably a few bugs need squashing... 05 August 2014, 01:39:55 UTC
a178539 Initial commit of the Tehuti stats integration. Some unit tests are failing. Probably a few bugs need squashing... 05 August 2014, 01:37:57 UTC
1e187a1 Merge pull request #202 from tgockel/master API-compatible changes to the C++ client 04 August 2014, 22:12:20 UTC
f3c6fdb Four node and two node configs two configurations for local testing. I found it helpful for testing some of the scenarios. Editing them on multiple machines is painful and others could use this for testing. 04 August 2014, 21:15:48 UTC
acd1117 gradle build fails on mac some of the mac is forced to use Java 8 and Scala plugin does on Gradle 1.12 does not work with Java 8. Gradle has fixed the issue on 2.0 version. Added a task to cleanup the config directory files so that changes to stores.xml will take effect. Scala build intermittently fails with the error on mac FAILURE: Build failed with an exception. What went wrong: Could not resolve all dependencies for configuration ':zinc'. > Could not find org.scala-lang:scala-library:2.10.2. This is caused by incremental zinc compilation. Given the fact that scala is very rarely used the intermittent failure is very hard to workaround. Added a task for cleaning up config folder so that changes in stores.xml will take effect. 04 August 2014, 21:15:48 UTC
ec2fcfd Reuse objectmapper object to make vector clock serialization faster 04 August 2014, 18:32:49 UTC
f964d3c C++ Client: bump maintenance version number. 02 August 2014, 16:46:05 UTC
0a0ef0c Releasing voldemort 1.8.11 01 August 2014, 22:02:49 UTC
bacb04b Makes Store::get and Store::getName const functions. Also changes InconsistencyResolvingStore, RoutedStore and SocketStore implementations to be const. 31 July 2014, 18:36:20 UTC
abec421 C++ client: Changes VersionedValue::getVersion to return a const Version*. By returning a non-const Version*, the semantic const-correctness was broken. You could not modify the pointer, but that didn't matter. 31 July 2014, 17:48:35 UTC
33baf2a C++ client: Adds VOLDEMORT_ prefix to all include guards. This should minimize conflicts with other libraries. 31 July 2014, 17:01:00 UTC
392bea2 Changes exception message in Cluster::getNodeById to use boost::format. The previous code would cause a segmentation fault if nodeId was greater than the string length, and the message now actually includes the ID. 31 July 2014, 16:36:17 UTC
efef445 Changes Cluster constructor to take string by const reference. 31 July 2014, 16:31:58 UTC
7bc8cb9 Skewed reporting 31 July 2014, 02:05:16 UTC
970877c Exceptions goes uncounted Get does parallel requests first and if it fails/times move on to the serial requests. Exceptions are tracked if the parallel requests fail or timesout after the pipeline is finished. But if the Serial requests are processing then the exception goes unnoticed. This causes the node to stay available for a long time affecting the latency and error rates. This fix reduces the time window an exception goes unnoticed. I thought about moving the error handling inside the callback and not have it at 2 places. But not sure what will be the perf impact of the error tracking code, could be negligible but saving that for a later time. 30 July 2014, 17:52:00 UTC
51b2395 ClientRequest Executor fix and log fixes 1) Protocol negotiation request does not have a timeout associated with it . So if the connection fails the Input/Output buffers are leaked and cause Out Of Memory errors. Setting the timeout for the Protocol negotiation requests as the caller expects a timeout. No new logs are introduced. Only the existing log is made more informative. 2) When protocol negotiation timesout, an obscure error message is thrown, IllegalStateException. This happens as the code tries to read the result in case of timeout. Handle this case and report a meaningful error. 3) Serial request times out on a connection, error message does not mention the socket that timed out. 4) Fix other minor logging information. 30 July 2014, 17:41:25 UTC
5708c0c Threshold failure detector issue 1) Threshold failure detector, marks a node as available when it receives a non-catastrophic error after configured number of catastrophic errors. When a node goes unavailable, generally first there will be lots of connectExceptions ( catastrophic) and timeouts for already established connections. This causes failure detector to treat a node that is being down as up and affects the client latency as all the get waits for the connection timeout to happen and goes for the serial requests. 2) Threshold failure detector, marks a node as unavailable after a window rolls over. Threshold failure detector tracks successes/failures in window ( default 5 minutes) and if the successes drop below a configured ( defaul 95 ) percentage and if there are more errors than configured it marks the node as down. When the window rolls over, and if the first request succeeds or when a node comes back up the failure count is not reset. This causes an available node to be marked as down. 3) Enhance the unit tests to cover the above 2 cases. 4) Dump the statistics when a node goes down to reason about it in the logs. The new code is written with the following reasoning. Do the book keeping first. Make decision next. The new code intentionally does not reset the catastrophic errors on a window roll over as it will be reset by the first success anyway. The node can still flap when the failure is above minimum and the percentage oscillates around the configured percentage. But I don't see any good workaround and nor it was an actual issue on 20+ repetitions I created for an internal repro. So leaving them as it is. Previous code mixed both of these and lead to many issues. The previous code left many loose ends ( Boolean represented in int, Generic set methods, when it required reset, Set methods at individual variable level, when only reset method is required, copy pasted code). PS: There is a more serious third issue, Selector drains the parallel queue. When the request requires connection establishment Selector handles the connection too. If the node is dead Selector is going to wait configured time for connection to timeout ( default 5 seconds) . In this time Selector is not pumping read/write and hence all these requests eventually time out. We are discussing the potential issues for this fix and will address this in the next fixes. There are many other minor issues I uncovered as well. 29 July 2014, 21:17:38 UTC
4fd732f Expose http decoder parameters as config 28 July 2014, 19:53:41 UTC
a86898e Releasing Voldemort 1.8.10 23 July 2014, 23:49:52 UTC
ee09314 Register slops if async writes fail due to quota Fix Async puts to succeed even if quota exceeded Please enter the commit message for your changes. Lines starting Adding unit test for Quota failed Parallel puts Fixing unit tests for Async write quota failures Updating PipelineRoutedStats JMXGetters for QuotaExceededException And minor code chagnes 23 July 2014, 23:34:51 UTC
493f500 Remove dated inaccurate comment 16 July 2014, 20:08:03 UTC
30185d4 Releasing Voldemort 1.8.9 02 July 2014, 22:05:25 UTC
0a9b7ed minor code review comments 02 July 2014, 20:49:38 UTC
28f5d9f Adding schema backwards comaptibility in AdminClient for these methods: * updateRemoteMetadata * updateRemoteMetadataPair * addStore 02 July 2014, 18:40:52 UTC
a42ac35 Adding backwards compatibility checks in AdminClient For the methods: * fetchAndUpdateRemoteStore(int nodeId, List<StoreDefinition> updatedStores) * updateRemoteStoreDefList(int nodeId, List<StoreDefinition> storesList) so the exceptions are thrown even before hitting the server. 02 July 2014, 00:18:37 UTC
7ec06ad Add schema backward compatibility check when updating store definitions 25 June 2014, 00:20:17 UTC
cd4c627 Releasing Voldemort 1.8.8 24 June 2014, 20:50:41 UTC
8dbdb63 Incorporating review comments Changing timeout for HttpClientFactory shutdown to 10 seconds 24 June 2014, 20:09:41 UTC
ca6d63c move transport client instantiation to getRawStore adding timeout to HttpClientFactory shutdown added minor log messages 24 June 2014, 20:09:41 UTC
de7cae0 Merge pull request #199 from arunthirupathi/eclipseJunit Junit tests are not running inside eclipse 24 June 2014, 19:17:13 UTC
7c9af85 Junit tests are not running inside eclipse Java builder property is not set on the .project file which causes all the tests to fail with the ClassNotFoundException Some test uses GetContent which causes CoordinatorRestAPITest to fail. 24 June 2014, 17:12:08 UTC
11c8664 Update CONTRIBUTORS Add Arun and Xu 20 June 2014, 20:08:56 UTC
30b0c32 Wrap mime multipart into a mime message to ensure headers are updated 19 June 2014, 22:46:18 UTC
674b152 add socket connection refresh message in AdminClient 19 June 2014, 22:22:44 UTC
2d531e2 Releasing Voldemort 1.8.7 with the Quota metrics fix 19 June 2014, 18:44:14 UTC
9065ec1 Merge pull request #198 from icefury71/mbean_quota_fix Registering individual store quota stats instead of aggregate to the Mbe... 19 June 2014, 18:36:49 UTC
3d63974 hudson run fails to copy mysql 1) There is not libs directory anymore so hudson run fails to copy the mysql.jar to the lib directory. Added the mysql as testRuntime so the jar will be downloaded automatically 2) Added war task to update the documentation 19 June 2014, 17:43:40 UTC
cf92ed7 Registering individual store quota stats instead of aggregate to the Mbean server 19 June 2014, 17:25:32 UTC
6dc8505 add eclipse and idea projects to gitignore eclipse and idea projects will have the lib paths different for each person, as they will point to the jars from the gradle cache. 19 June 2014, 06:25:55 UTC
f0ee03d remove .classpath and .project gradle eclipse updates teh existing classpath and project and leaves teh classpath is a very inconsistent state. So removing these files and the users can generate them when required. Will fix the .gitignore to add these files so that they dont show up. 18 June 2014, 19:32:38 UTC
71e29a7 eclipse import is broken 1) src/java is defined multiple times which causes the problem 2) outputDir is set to bin, which erases all the shell scripts 18 June 2014, 15:18:30 UTC
861dbe4 use maven central for gradle dependencies 1) The jars are directly consumed from libs directory which makes upgrading the dependencies harder. Also in some cases the transitive dependencies are not copied correctly which causes issues. 2) Seperated the libs to private-lib and public-lib. private-lib will contain jars for which I could not find the same version in the maven central repository. The public-lib are available in maven central and are not dependent upon by gradle. But still kept for ant compatibility. 3) As part of the build (ant/gradle) all the dependent libs are copied into the libs. This is to make the bin/*.sh work. Also there is some EasyVPL code which depends on the jar in library. 4) Since the classpath is going to be different both the eclipse and idea will break. But after the download you can run ./gradlew eclipse and ./gradlew idea to regenerate the correct project/ classpath to make it work again. 13 June 2014, 23:49:28 UTC
99e7207 Merge pull request #188 from d4mian/minor-changes Comment typos, duplicate code removal and avoid unnecessary fetch of column key_ from the database. 11 June 2014, 22:01:34 UTC
e639011 Releasing Voldemort 1.8.6 containing Quota (per store instead of aggregate) fix. 11 June 2014, 21:31:32 UTC
3b4dd8d Merge pull request #196 from icefury71/quota_per_store_stats_fix Fix for QuotaLimitingStore: Passing storestats for the current store ins... 11 June 2014, 17:57:10 UTC
25800b8 Merge pull request #194 from arunthirupathi/PoolSizeRename RestClient renamed poolsize key 11 June 2014, 17:09:37 UTC
6b4c17f Fix for QuotaLimitingStore: Passing storestats for the current store instead of the aggregate 11 June 2014, 16:57:08 UTC
1b31ab8 log4j.properties is included in the voldemort jar While refactoring the consultant moved some code and it caused binary level difference on the vold jar. I reverted the change for now. Since it is reverting to the old state, skipping code review for now. 10 June 2014, 22:35:41 UTC
a2adb70 RestClient renamed poolsize key RestClient does not have POOL_SIZE_KEY anymore. From the source it is probably renamed to HTTP_POOL_SIZE. The previous constant value was poolsize and the new constant is http.poolsize. Upgrading the R2, Data, Pegasus libraries along with this change. 10 June 2014, 17:03:37 UTC
f41a40f add optional identifier string for StoreClientFactory 1. fix invalid package name in voldemort-coordinator.sh 2. replace jmxId with identifierString 10 June 2014, 00:28:41 UTC
89389c3 Release voldemort 1.8.5 Gradle related changes - empty settings file - empty voldemort-contrib directory - gradle wrapper to fetch required version 06 June 2014, 18:10:20 UTC
f0f2ac8 Merge pull request #193 from arunthirupathi/voldemort-contrib Dummy directory for injecting custom gradle behavior 06 June 2014, 18:01:32 UTC
d540995 Dummy directory for injecting custom gradle behavior This is a place holder directory for injecting custom gradle behavior. This directory is not directly used in the open source gradle builds. The open source project produces 2 artifacts voldemort.jar and voldemort-contrib.jar. This is not gradle friendly as in gradle if you are producing more than one jar from the same module exporting ivy dependencies and other becomes very trickier. This allows an upstream wrapper to inject custom behavior. For example upstream wrapper can define a project(':voldemort:voldemort-contrib') and define all the gradle behavior dependencies, black box build . Theoretically we could have used the contrib directory but that will result in lot more confusion as that directory produces some artifacts and upstream could want a different behavior. 06 June 2014, 17:54:38 UTC
7ee12b1 Merge pull request #192 from szczepiq/master Added empty settings.gradle so that Gradle does not search it in parent dirs. 05 June 2014, 16:02:07 UTC
9d0a32d Added empty settings.gradle so that Gradle does not search for it in parent dirs. 05 June 2014, 14:22:43 UTC
cbc5e38 Merge pull request #191 from arunthirupathi/gradleBuild Generate gradle wrapper to work with versions 03 June 2014, 23:25:24 UTC
f1f574e Releasing Voldemort 1.8.4 03 June 2014, 23:00:15 UTC
760230c Fixing RESTClientFactory * close() method should shutdown transportClient cleanly in all use cases. * getStoreClient(storeName, resolver) should return a LazyStoreClient 02 June 2014, 15:07:48 UTC
64aa549 add check for SocketAndStreams in sendAndReceive 30 May 2014, 23:49:40 UTC
c8b6485 Generate gradle wrapper to work with versions Gradle version 1.12 is required for our gradle. But by default most of us has only 1.4 . So the tasks will fail with compile errors in these cases. Gradle provides a wrapper where it manages the versions for us. Add task gradle wrapper and it creates some files. These files can be checked into the version control and people can run this command instead of gradle. 30 May 2014, 20:19:09 UTC
95e0c86 Merge pull request #190 from arunthirupathi/gradleJunit Fix the junit tests, bump sleep for bind issues 30 May 2014, 18:27:04 UTC
8b8f12a Fix the junit tests, bump sleep for bind issues 1) Merged the changes from Szczepan for fixing the Junit tests. Previously JunitAll ran the integration tests and ran over 4 hours. 2) Szczepan removed redundant sourceSets, moved common configurations to test block, created reports 3) Created aggregated reports for junitAll verified the coverage was similar to before. 4) Noticed few bind exceptions on 2 ms sleep, so bumped them to 5 ms. 30 May 2014, 18:23:45 UTC
3fd7ea8 Addressing review comments for fetch_single_store 28 May 2014, 17:11:29 UTC
d867fba Added the ability to query a single store using AdminClient / admin tool 28 May 2014, 17:11:29 UTC
ba743dc Releasing Voldemort 1.8.3 27 May 2014, 19:59:06 UTC
185b246 fix problems in admin tool 1. fix bug in validating store names on nodes 2. rename some functions 3. use node id rather than node object in admin command functions 27 May 2014, 19:51:41 UTC
1cebbf6 Adding debug log messages for CoordinatorService - adding review comments 27 May 2014, 19:29:06 UTC
33966e2 Adding debug log messages for CoordinatorService 27 May 2014, 19:29:06 UTC
d8787c4 Merge pull request #185 from arunthirupathi/gradleJunit junit support for gradle, Will Merge in this commit and will apply the patch on the top from Szczepan. 27 May 2014, 17:16:10 UTC
7a7c8fb Merge pull request #186 from ctasada/NetworkClassLoader Fixed NetworkClassLoader bug when running in Windows OS 24 May 2014, 00:28:06 UTC
d4cbd66 Added url explaining the problem in deep 23 May 2014, 08:53:04 UTC
5a45739 Fixed NetworkClassLoader bug when running in Windows OS 22 May 2014, 14:29:56 UTC
0b15452 Merge pull request #184 from arunthirupathi/bindExceptions Fix bind failures while running tests 22 May 2014, 00:43:56 UTC
b453b53 junit support for gradle Added junit support for gradle gradle build will run minimal test cases and runs in 4 minutes gradle jar will not run any test case gradle junit will run all junit and takes about 30 minutes 21 May 2014, 22:56:50 UTC
back to top