-
Notifications
You must be signed in to change notification settings - Fork 312
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release 2.0.0 #536
Comments
Release NoteNOTE: 2.0.0 is backward-compatible only, which means servers upgraded to this version can't rollback to previous versions. The following are the highlights in this release: DuplicationDuplication is the solution of Pegasus for intra-cluster data copying in real-time. We currently limit our master-master duplication for 'PUT' and 'MULTI_PUT' only. See this document for more details: Backup RequestBackup Request is a way to eliminate tail latency by sacrificing minor data consistency, fallback reading from a random secondary when the primary read failed to finish at the expected time. RocksDB Meta CFPegasus currently has a hacked version of RocksDB that stores a few metadata in the manifest file, which makes our RocksDB incompatible with the official version. In this version, we exploit an additional column family (called 'Meta CF') to store those metadata. To finally get rid of the legacy RocksDB, you must first upgrade the ReplicaServer to 2.0.0. Bloom Filter OptimizationThis time we support metrics for the utilization of bloom filters in Pegasus. And for critical scenarios, we provide configurations for performance tuning on bloom filters. Cold-Backup FDS LimitThis feature adds throttling on download and upload during cold-backup. Adding Node OptimizationWe previously suffer from the effect brought by data migration when adding one or more nodes into a cluster. In some latency-critical scenarios (mostly focus on read-latency) this (3~10 times increase in latency) usually implies the service briefly unavailable. In 2.0.0 we support a strategy that the new nodes do not serve read requests until most migrations are done. Although the new nodes still participate in write-2PC and the overall migration workload doesn't decrease, the read latency significantly improved thanks to this job. Be aware that this feature requires merely pegasus-tools to be 2.0.0, you don't have to upgrade the server to 2.0.0. See #528. |
2.0.0
rDSN
Pegasus
Incompatitable Modifications
New perf-counter
collector*app.pegasus*app.stat.backup_request_qps #<app_name>
feat: statistics backup request qps in info collector #501replica*app.pegasus*rdb.bf_seek_total@<gpid>
feat(metrics): Add bloom filter related metrics #521replica*app.pegasus*rdb.bf_seek_negatives<gpid>
feat(metrics): Add bloom filter related metrics #521replica*app.pegasus*rdb.bf_point_positive_true<gpid>
feat(metrics): Add bloom filter related metrics #521replica*app.pegasus*rdb.bf_point_positive_total<gpid>
feat(metrics): Add bloom filter related metrics #521replica*app.pegasus*rdb.bf_point_negatives<gpid>
feat(metrics): Add bloom filter related metrics #521collector*app.pegasus*app.stat.rdb_bf_seek_negatives_rate#<app_name>
feat(metrics): Add bloom filter related metrics #521collector*app.pegasus*app.stat.rdb_bf_point_negatives_rate#<app_name>
feat(metrics): Add bloom filter related metrics #521collector*app.pegasus*app.stat.rdb_bf_point_false_positive_rate#<app_name>
feat(metrics): Add bloom filter related metrics #521replica*eon.replica*backup_request_qps@<app_name>
feat: add perf-counter for backup request XiaoMi/rdsn#419collector*app.pegasus*app.stat.duplicate_qps#<app_name>
feat(dup): support shell set fail_mode and collector duplication ops #520collector*app.pegasus*app.stat.dup_shipped_ops#<app_name>
feat(dup): support shell set fail_mode and collector duplication ops #520collector*app.pegasus*app.stat.dup_failed_shipping_ops#<app_name>
feat(dup): support shell set fail_mode and collector duplication ops #520replica*app.pegasus*dup.time_lag_ms@<app_name>
feat(dup): add metric for time lag between master&slave #526replica*app.pegasus*dup.lagging_writes@<app_name>
feat(dup): add metric for time lag between master&slave #526New configuration
[pegasus.server] rocksdb_bloom_filter_bits_per_key, rocksdb_format_version
feat(rocksdb): Support more configurable items for bloom filter #522[pegasus.server] get_meta_store_type
feat(rocksdb): Support to config meta data read source #532[nfs]
max_copy_rate_megabytes feat: add rate limit for learning and support remote-command XiaoMi/rdsn#461[pegasus.server] dup_lagging_write_threshold_ms
feat(dup): add metric for time lag between master&slave #526[replication] fds_write_limit_rate, fds_read_limit_rate
feat(cold-backup): add rate limit for fds XiaoMi/rdsn#443The text was updated successfully, but these errors were encountered: