Priam

Co-Process for backup/recovery, Token Management, and Centralized Configuration management for Cassandra.

APACHE-2.0 License

Stars
1K
Committers
59

Bot releases are hidden (Show)

Priam - Fix a bug in grabbing preassigned token and backport jvm.options.

Published by cthumuluru over 5 years ago

New Feature

  • (#821): Backport Configuring JVM Options for Cassandra using jvm.options if your Cassandra supports jvm.options, you can enable it by setting Priam.jvm.options.supported, then the options are the same as 3.11

Bug fix

  • (#822): Use replace_address instead of replace_address_first_boot. replace_address always try to bootstrap Cassandra in replace mode even when the previous bootstrap is successful. replace_address_first_boot tries to bootstrap normally if the node already bootstrapped successfully.
Priam - Changing the list in TokenRetrievalUtils to use wildcards.

Published by cthumuluru over 5 years ago

Priam - Changing the list in TokenRetrievalUtils to use wildcards.

Published by cthumuluru over 5 years ago

Priam will check Cassandra gossip information while grabbing pre-assigned token to decide if it should start Cassandra in bootstrap mode or in replace mode. Moved token owner inferring logic based on Cassandra gossip into a util class. Refactored InstanceIdentity.init() method. Fixed DeadTokenRetriever to use the IP from token database when minimum number of instances are not reachable.

Priam - Priam will check gossip info while grabbing pre-assigned token.

Published by cthumuluru over 5 years ago

  1. Priam will check Cassandra gossip information while grabbing pre-assigned token to decide if it should start Cassandra in bootstrap mode or in replace mode.
  2. At most 3 random nodes are used to get the gossip information.
  3. Moved token owner inferring logic based on Cassandra gossip into a util class.
  4. Refactored InstanceIdentity.init() method.
Priam - Enable/disable backup service. Expose file list as API for automation.

Published by arunagrawal84 over 5 years ago

  • Update the backup service based on configuration changes.
  • Expose the list of files from backups as API call.
  • Run TTL for backup based on a simple timer to avoid S3 delete API call throttle.
  • API to clear the local filesystem cache.
  • Bug fix: Increment backup failure metric when no backup is found.
  • Bug fix: No backup verification job during restore.
Priam - Enable/disable backup service. Expose file list as API for automation.

Published by arunagrawal84 over 5 years ago

  • Update the backup service based on configuration changes.
  • Expose the list of files from backups as API call.
  • Run TTL for backup based on a simple timer to avoid S3 delete API call throttle.
  • API to clear the local filesystem cache.
  • Bug fix: Increment backup failure metric when no backup is found.
  • Bug fix: No backup verification job during restore.
Priam - Write-thru cache in AbstractFileSystem.

Published by arunagrawal84 over 5 years ago

  • Write-thru cache in AbstractFileSystem.
  • Take care of issue - C* snapshot w.r.t. filesystem is not "sync" in nature.
Priam - Make cache in AbstractFileSystem write-thru

Published by arunagrawal84 over 5 years ago

  • Write-thru cache in AbstractFileSystem.
  • Take care of issue - C* snapshot w.r.t. filesystem is not "sync" in nature.
Priam - Bug fixes for forgotten file, prefix filtering and notifications.

Published by arunagrawal84 over 5 years ago

  • Fix for forgotten file
  • Use older API for prefix filtering (backup TTL), if prefix is available.
  • Send notifications only when we upload a file.
Priam - Bug fixes for forgotten file, prefix filtering and notifications.

Published by arunagrawal84 over 5 years ago

  • Fix for forgotten file
  • Use older API for prefix filtering (backup TTL), if prefix is available.
  • Send notifications only when we upload a file.
Priam - Remove use of `prefix` method from S3 - BucketLifecycleConfiguration

Published by arunagrawal84 over 5 years ago

Priam - Remove use of `prefix` method from S3 - BucketLifecycleConfiguration

Published by arunagrawal84 over 5 years ago

Priam - Hotfix: Output from the servlet should be JSON

Published by arunagrawal84 over 5 years ago

BackupServlet had an API call of backup status which was producing output which was not JSON.

Priam - Hotfix: Output from the servlet should be JSON

Published by arunagrawal84 over 5 years ago

BackupServlet had an API call of backup status which was producing output which was not JSON.

Priam - BackupVerificationService and Backup Cache

Published by arunagrawal84 over 5 years ago

(#784): BackupVerificationService
(#781): Put a cache for the getObjectExist API call to S3. This will help keep the cost of this call at bay.
(#781): Put a rate limiter for getObjectExist API call to S3 so we can limit the no. of calls.
(#783): Provide an override method to force Priam to replace a particular IP.

Priam - BackupVerificationService and Backup Cache

Published by arunagrawal84 over 5 years ago

(#773): BackupVerificationService
(#779): Put a cache for the getObjectExist API call to S3. This will help keep the cost of this call at bay.
(#779): Put a rate limiter for getObjectExist API call to S3 so we can limit the no. of calls.
(#782): Provide an override method to force Priam to replace a particular IP.

Priam - Do not check existence of file if it is not SST_V2.

Published by arunagrawal84 over 5 years ago

S3 may decide to slow down and throw an error. Best not to do s3 object check (API) if it is not required.