Skip to content

v1.12.3

Compare
Choose a tag to compare
@levy5307 levy5307 released this 23 Apr 09:09
· 5502 commits to master since this release

Release Notes of v1.12.3

The following are the highlights in this release:

New Hotspot Algorithm Support

A new algorithm of hotspot detection is supported here, which makes the following improvements:

  1. It defined the concept of threshold, and ready for automatic monitoring.
  2. It has higher stability

Thanks to @Smityz .

Related PR:

  • feat(hotspot): new algorithm of hotspot detection (#479)
  • feat(collector): add statistics for partition hotspot (#444)

Optimization

There are some updates used to optimize memory usage and reduce performance cost.

Related PR:

  • feat: limit long time rocksdb iteration operation(#500)
  • feat: forbid large-size-value writes to Pegasus (XiaoMi/rdsn#414)
  • feat: add a new app_env to limit scan time (XiaoMi/rdsn#421)
  • feat: tcmalloc memory release improvements (XiaoMi/rdsn#435)

Upgrade from the previous version

[replication]
- allow_non_idempotent_write = false
+ max_allowed_write_size = 1048576 # default = 1MB
+ cold_backup_checkpoint_reserve_minutes = 10

[pegasus.server]
# cluster level restriction {3000, 30MB, 1000, 30s}
+ rocksdb_multi_get_max_iteration_count = 3000
+ rocksdb_multi_get_max_iteration_size = 31457280
+ rocksdb_max_iteration_count = 1000
+ rocksdb_iteration_threshold_time_ms = 30000
+ rocksdb_use_direct_reads = true
+ rocksdb_use_direct_io_for_flush_and_compaction = true
+ rocksdb_compaction_readahead_size = 2097152
+ rocksdb_writable_file_max_buffer_size = 1048576
- perf_counter_cluster_name = %{cluster.name}
- perf_counter_enable_falcon = false
- perf_counter_enable_prometheus = false
+ perf_counter_sink = <falcon | prometheus>

[pegasus.collector]
- cluster = %{cluster.name}
+ hotspot_detect_algorithm = <hotspot_algo_qps_variance | hotspot_algo_qps_skew> 

[replication]
+ cluster_name = %{cluster.name}