Releases: thelastpickle/cassandra-reaper
1.4.0
1.4.0 (2019/02/11 11:10 +00:00)
- f5431fb Update Docker variables to work with the latest (and embedded) shiro configuration. (@michaelsembwever)
- 4749ca1 Add docker variable
REAPER_BLACKLIST_TWCS
to define blacklistTwcsTables in yaml (@michaelsembwever) - 25e5cde Save the JWT locally to avoid passing it for each call (@adejanovski)
- b1099d9 Enforce use of JWT instead of sending credentials for each call (@adejanovski)
- 519093b Add support for authentication in spreaper (@adejanovski)
- 689e474 Add valid checks for the JWT validity (@adejanovski)
- f8bb73b Tests, documentation, and a configuration template, for Shiro->LDAP support (@michaelsembwever)
- f9dca5f Update cluster list to include model with JMX credential information from server (@ossarga)
- 0bf93c6 Add flag to cluster information to say if JMX password is set (@ossarga)
- 8a0857c Add JMX username to cluster information (@ossarga)
- 59e58c7 Full Shiro protection. (@michaelsembwever)
- dfa792f Allow for automatically blacklisting any TWCS or DTCS tables within a keyspace (@denniskline)
- 8d6fa96 Use a concurrency lock around the
repairRunners
map to ensure synchronized access and modifications. (@michaelsembwever) - f3a7c94 Upgrade to Dropwizard 1.1.8 (Jetty upgrade) (@adejanovski)
- d29fe5f Fix for duplicate repair runs being started for a given schedule and unit by different SchedulingManager instances in different JVMs. (@michaelsembwever)
- 40f0638 Make SchedulingManager a singleton that can be closed/cancelled, rather than static. (@michaelsembwever)
- cbfc8f1 Introduce system variable to adjust the scheduling manager's check frequency. (@michaelsembwever)
- 7cdb6c6 Separate default test job from deploy test job, and move them into different stages (@michaelsembwever)
- e3a96ba Add Support for Integration tests to run against any past released version of Reaper (@michaelsembwever)
- 7f3ff17 Allow to configure a custom JMX port per cluster (@adejanovski)
- 7e2441a Properly report the list and count of tokens for a node (@adejanovski)
- a8ddc8e Remove nodes that left the cluster from the cluster view (@adejanovski)
- c53ab83 Add configuration support for enabling an addressTranslator in cassandra persistence options (@paddybyers)
- 49789e3 Rename Reaper metrics to make them compatible with Prometheus (@rzvoncek)
- a15bdac Workaround SUREFIRE-1588 bug that crashes the build with using jdk8_u181 (@michaelsembwever)
- 0a7217c StreamManagerMBean is only available from Cassandra 2.0 onwards (@rborer)
1.3.0
1.3.0 (2018/10/03 14:09 +00:00)
- 79685e1 ISSUE-481 Re-add 'useAddressTranslator' to docs (@ossarga)
- 4eda10a Use new bintray package names (@michaelsembwever)
- 40b79c7 Add password generation mechanism (@nsteinmetz)
- ffcb691 Add auth with encrypted password sample (@nsteinmetz)
- #533 Update cassqndra-reaper. To be able to read config from /usr/local/etc (#533) (@kotaroyamazaki)
- #461 Fixes #311. Allow webui to be aware of a server defined applicationContextPath setting (#461) (@denniskline)
- 49f3722 Refactor usage of com.google.common.base.Optional to java.util.Optional (@michaelsembwever)
- a22a319 Cast mbean attribute ValidationExecutor ActiveTasks and PendingTasks to Number object instead of Integer or Long. (@michaelsembwever)
- 8b28071 [node-stats] Add missing React keys to prevent exceptions (@rzvoncek)
- 00cc0cc [streams] Add a 'no ongoing streams' mention when there are no streams (@rzvoncek)
- 35fec8c Add support for collecting metrics on a node (@adejanovski)
- 909895d Add support for listing running compactions (@adejanovski)
- 4892197 [streams] Show tables using tags, so they are nicely separated (@rzvoncek)
- 87540ba If a cluster is deleted too quickly after a schedule/repair has been created, rather than the ClusterResource catch it, it will get caught as an assertion failure in CassandraStorage. (@michaelsembwever)
- 467c793 Reaper #369 Frontend for showing node streams (@rzvoncek)
- b11518a Reaper #369 Pull-only backend for tracking streams (@rzvoncek)
- 324f0c6 Add informations to upgrade from 1.2.0/1.2.1 to 1.2.2 (@adejanovski)
- 9360c61 Log when database migrations are going to happen, and ensure other reaper instances are stopped. (@michaelsembwever)
- d4406b5 Clean up on 'display node metrics' (@michaelsembwever)
- d8d69de make max pending compactions configurable
- 72ce3a9 Display metrics in the node's detail page (@adejanovski)
- 438ed51 Add support for collecting metrics on a node (@adejanovski)
- 6a757ff Unit tests that the db migration scripts are ok. (@michaelsembwever)
1.2.2
1.2.2 (2018/07/25 10:50 +00:00)
- ae42bab Fix
IStorage.getRepairUnit(builder)
implementations to include matching on incremental boolean parameter, and deleting (all related) units only when deleting the cluster. (@michaelsembwever) - b4c3248 Use executorServices from DropWizard's lifecycle, where possible in various top-level singletons. (@michaelsembwever)
- 2726931 Set isDev flag correctly for server.js (@spodkowinski)
- 9a48abf Ignore late "start" notifications in SegmentRunner (@michaelsembwever)
- bfda40d fix typo in sample for cassandra backend
- c0cf003 Add systemd service file, add post-install task for log directories creation
- 9b2c66d Listing snapshots can fail easily (if snapshot files/directories are deleted by someone else). (@michaelsembwever)
- d32b54e In RepairManager synchronise the private method startRepair to multiple repair runners on the same runId (@michaelsembwever)
- 998250c Replace RepairRun, RepairUnit and RepairSchedule's inner Builder classes' verbose public constructor with a static
builder()
methods and builder methods. (@michaelsembwever)
1.2.1 (2018/07/12 16:55 +00:00)
- 9b128fc Fix incremental repair sending several SUCCESS notifications in 2.1 (@adejanovski)
- 9c26058 Fix for the schema disagreement issue created by Migration014 (@adejanovski)
- c42a808 Fix cluster screen display with Postgres and H2 (@adejanovski)
- 16c4d49 Ensure notifications for a given repairNo are processed in order. (@michaelsembwever)
- f35648e In JmxProxyImpl refactor commandId to repairNo, for consistent terminology. (@michaelsembwever)
- 36fe520 fix login (@nsteinmetz)
1.2.0 (2018/07/06 15:07 +00:00)
- 6a44f3c Add automated purge functions (@adejanovski)
- c29acc7 Handle out of order repair notifications (@adejanovski)
- 707305d Fix base url issues with the UI (@adejanovski)
- ef61566 Clean code: remove unused JmxProxyImpl.cmProxy (@michaelsembwever)
- 60095ff Clean code: remove RepairStatusHandler parameter from JmxConnectionFactory's connect methods. It was but test pollution. (@michaelsembwever)
- ca18d00 Fix the broken "add node" button in the UI (@adejanovski)
- 53d9246 Improve start time selection for schedules (@adejanovski)
- b81fb13 Ninja fix refresh issue on the new time picker for schedules (@adejanovski)
- #452 UI improvements (#452) (@pndewit)
- c4feb99 Use a new datetime picker for the schedule page (@adejanovski)
- 32c779f Support Cassandra-4.0 for backend storage (@michaelsembwever)
- 3d62a2c Implement limit in
CassandraStorage.getRepairRunsForCluster(cluster, limit)
(@michaelsembwever) - 633c1d4 As RepairUnits are immutable, and limited in number, introduce in CasandraStorage a LoadingCache. (@michaelsembwever)
- 1253f03 Refactor the
IStorage.getRepairUnit(UUID)
method to return the RepairUnit instead of an Optional. (@michaelsembwever) - a4626dd Cleanup the RepairManager.abortSegmentsWithNoLeader() method. (@michaelsembwever)
- b27a55f break down the RepairManager.resumeRunningRepairRuns() method for better readability (@michaelsembwever)
- 17bbf11 Upgrade dependencies. (@michaelsembwever)
- ce5196a Ninja fix for job threads set to 0 (@adejanovski)
- 21edbeb Fix incremental repair segments from being identified as stuck (@adejanovski)
- 72fc8c3 ninja fix travis deployments (@adejanovski)
- e0e2cf1 Add support for repair threads to spreaper (@adejanovski)
- 12d8ef5 Documentation updates for the repair threads setting (@adejanovski)
- ce04d57 UI changes for repair thread count support (@adejanovski)
- c5d3b1b Avoid the NPE in Heart.beat when shutting down (@michaelsembwever)
- 5360688 Fix spelling of "parallelism" (@a1exsh)
- 8882458 Fix spreaper add schedule function (@adejanovski)
- 4903226 CircleCI – paramterise the build, using yaml references (@michaelsembwever)
- a9b6386 Make Travis also test against Cassandra-4.0 backend (@michaelsembwever)
- bc86d40 Update REST API and Docker vars docs (@adejanovski)
- 32867cb Update Bootstrap and Fontawesome to use latest CDN over HTTPS. (@terrcin)
- 4d7cc72 For the Cassandra storage optimise the select statements around fetching segments from the repair_run table. (@michaelsembwever)
- d18183a small fix to link to travis branches page (otherwise it lands on latest build of any branch) (@michaelsembwever)
- 69238f9 Publish new website with "Always build the npm and bower UI components" changes. (@michaelsembwever)
- 3f655c4 Remove unused
src/docs/public
directory (@michaelsembwever) - d943370 Always build the npm and bower UI components. (@michaelsembwever)
- 2f48c54 clean code on SnapshotResource and SnapshotManager (@michaelsembwever)
- 0159fc5 Improve REST API to RepairRunResource and SnapshotResource (@michaelsembwever)
- [29cfa53](ht...
1.1.0
1.1.0 (2018/02/28 19:25 +00:00)
- e5519a7 updating metrics for repairProgress,segmentsDone,segmentsTotal and added keyspace to metric (@kingm5)
- 3cf121d Prevent stuck segment runner issues on uncatched exceptions (@adejanovski)
- f7a148d Remove unnecessary postpones when a segment isn't allowed to start (@adejanovski)
- bd17578 Ninja fix for error trace overload (@adejanovski)
- 6f3f3fa Initialize JMX connections on startup only when necessary. (@adejanovski)
- 00c2cc7 Fix issue with poorly registered metrics upon node restarts (@adejanovski)
- 07a897c Ninja fix for segment abort (due to a bad rebase) (@adejanovski)
- b9d8681 Switch to re-usable JMX connections instead of re-creating one each time it's needed. (@adejanovski)
- ca2341a UI update for ordering fixes (@adejanovski)
- ea1a0a0 Fix orderings of cluster names, repair runs and schedules (@adejanovski)
- 283f7e2 Add Maven uploads to Bintray (@adejanovski)
- 39e8cab turn on gpg signing of uploaded packages (@adejanovski)
- 6e2afd3 Ninja fix for hardcoded urls (@adejanovski)
- a07d2e6 UI update for segment display/abort (@adejanovski)
- 263f4ec Add ability to list and abort segments (@adejanovski)
- d30d79f fix build by using fpm directly instead of docker-compose (@adejanovski)
- 35694c3 Handle cases where a segment reaches timeout without being in either RUNNING or DONE state. (@adejanovski)
- 0091a4b Push all packages to Bintray on the master branch (beta) and tags (releases). (@adejanovski)
- 65fd58f Prevent crashing the scheduler for RepairManager.resumePendingRepairRuns() in case of unexpected exception. (@adejanovski)
- 07eadc3 added 1st set of metrics suggested (@debswade)
- 67d6721 Another fix for
IllegalStateException: startTime must be set if segment is RUNNING or DONE
(@michaelsembwever) - ff0214f Ninja fix for issue #288 (@adejanovski)
- 13524bc Fix computing too many segments on high clusters with high number of vnodes. (@adejanovski)
- 5a4bfe9 NodeStatus: Handle hostnames in endpointsStatus output (@tedoc2000)
- 6f71b67 Implemented PUT method for change intensity (@kipwoker)
- 5b563db Supported change intensity in web app (@kipwoker)
- 6d06781 Only disable RepairSegment precondition checks when JVM is running with system property "-Dreaper.disableSegmentChecks=true" (@michaelsembwever)
1.0.2
- 5c9ca98 Ugly shameful fix for the endTime/startTime infamous bug (@adejanovski)
1.0.1
- e3b2cd7 Fix for Elassandra's gossip info output parsing (@adejanovski)
- 5a14d92 Duplicate the Migration009 script so it can run again to fix missing RepairSegment startTimes (@michaelsembwever)
- b56ce12 breakup the
SegmentRunner.runRepair(..)
method, the bulk of the body going intoSegmentRunner.processTriggeredSegment(..)
(@michaelsembwever) - f9ea67e if endTime is set, so must startTime be set #281 (@michaelsembwever)
1.0.0
1.0.0 (2017/11/14 20:58 +00:00)
- ba9ca5f Release 1.0.0 final (@adejanovski)
1.0.0-RC3
1.0.0-RC3 (2017/11/13 10:01 +00:00)
- 91b2737 Ninja fix to have Reaper work with 2.0 again (@adejanovski)
1.0.0-RC2
1.0.0-RC2 (2017/11/09 16:50 +00:00)
- 02e53d0 Should resolve current Docker image issues (@joaquincasares)
- d75ba7b Don't log every jmx connection failure within JmxProxyImpl. The thrown exception is logged appropriately when caught. (@michaelsembwever)
- 5d3d469 enable assertions by default when running Reaper. (@michaelsembwever)
- 257bab2 Fix typo: endabled -> enabled (@SaaldjorMike)
1.0.0-RC1
1.0.0-RC1 (2017/11/03 11:44 +00:00)
-
dc9c00d Pulled back the "database" setting for storage type to ensure backwards compatibility (@adejanovski)
-
1c64c1a Minimal fix for test failure as in described in #266 (@michaelsembwever)
-
42c4c14 Add a doc page about multi DC clusters (@adejanovski)
-
13d9246 Merge branch 'master' of https://github.com/thelastpickle/cassandra-reaper (@adejanovski)
-
10d3b02 Fix maven ui build with absolute path in pom instead of relative (@adejanovski)
-
8241eab fixed ignore for packages (@rustyrazorblade)
-
c0a4b7a Add version number in the UI (@adejanovski)
-
619b28a Correct cassandra storage table properties. Always enable the key cache, and disable all read_repairs. (@michaelsembwever)
-
e5dbedf Remove localMode configuration and logic, as it's not actually implemented yet. (@michaelsembwever)
-
91e5464 Fix repair_segment table start_time/end_time/state consistency (@adejanovski)
-
d6e5a10 Remove NULLs in RepairSegments stored in Cassandra. (@michaelsembwever)
-
20f5558 Fix issue with upgrades on postgres and h2 when coming from pre-0.8 versions (@adejanovski)
-
#256 Add metrics for repair progress + time since last repair. Fixes #207. (@thelastpickle)
-
2decdde dawdle duckling to 41ecc2b : node_metrics_v1.minute is a bigint (long) (@michaelsembwever)
-
ee37c5a Add metrics for repair progress + time since last repair. Fixes #207. (@rzvoncek)
-
41ecc2b Add request mechanism for metrics to allow datacenterAvailability = EACH to work properly on large clusters (@adejanovski)
-
ad41d64 Refactor test packages to match the runtime packages. Reduce class and methods visibilities where possible. (@michaelsembwever)
-
d6a8eb4 Cleanup naming: use "node" consistently, in place of "host". (@michaelsembwever)
-
ff19c38 Make RepairManager and Heart hold the AppContext as a field, rather than a parameter to all methods. (@michaelsembwever)
-
83d5528 Break apart CommonTools. Its methods put it correct peer classes, or into new service classes. (@michaelsembwever)
-
c572e57 Give datacenterAvailability = EACH better chances to work, through requesting for and updating node metrics for running repairs, as part of heartbeat. (@michaelsembwever)
-
2b806d3 Unit tests for Heart (@michaelsembwever)
-
27b8038 set heap sizes for travis builds to the same as circleci (which displays better stability) (@michaelsembwever)
-
6f10a47 Updated configuration docs and Docker envs (@ossarga)
-
40e852d Fix minor UI issues with autocomplete fields (@adejanovski)
-
8bf9aae UI changes for the new segment count per node (@adejanovski)
-
f3de7a3 Switch from a global segment count to a segment count per node (@adejanovski)
-
a8aae66 Fix browser cache issues when the UI evolves. (@adejanovski)
-
e717ad8 For Cassandra storage minimise the number of tombstones (NULL entries) in the repair_run table. (@michaelsembwever)
-
22afbdb Fix JmxConnectionFactory.connectAny(..) to loop a second time trying all hosts regardless of past successes/failures. (@michaelsembwever)
-
e899534 Doc fix for correct docker build commands (@michaelsembwever)
-
#228 Create CODE_OF_CONDUCT.md (#228) (@michaelsembwever)
-
9227f61 Fix NPE in CassandraStorage, when a read times out and the statement is null. (@michaelsembwever)
-
7b56121 Fix assertions around schedules, as the jersey response need not be successful, and then a correct response has to be waited for. (@michaelsembwever)
-
ea655b3 the integration-test profile is not used anywhere anymore. remove it. (@michaelsembwever)
-
6073a01 Cleanup classes and tests in the io.cassandrareaper.jmx pacakge (@michaelsembwever)
-
e2cf31c Update Dockerfile (@elsmorian)
-
630257d Update cassandra-reaper.yml (@elsmorian)
-
cfe3040 Add logic for handling table blacklists (@adejanovski)
-
6b6b785 Add REST endpoint for listing tables from a cluster (@adejanovski)
-
7078584 UI changes for blacklisted tables and other minor improvements (@adejanovski)
-
4c3ece2 Schema changes for blacklisted tables (@adejanovski)
-
f342866 Add to checkstyle the ConstantName rule. All static final fields are to be UPPER_CASE. (@michaelsembwever)
-
7dc2316 In cassandra storage override pooling options to allow bigger queue and longer timeout. (@michaelsembwever)
-
e42ca22 Add useAddressTranslator and localDC Docker envar support (@joaquincasares)
-
ce8e4e2 Fix yaml reference text (@joaquincasares)
-
b30652c Add for Docker, which defaults to 20s, based on the code default (@joaquincasares)
-
bdb0bd1 Fix for properly handling reboots of Reaper instances with distributed storage (@adejanovski)