-
Notifications
You must be signed in to change notification settings - Fork 468
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
sql/contention: introduce contention duration threshold cluster setting #13232
Comments
Kevin Ngo (kevin-v-ngo) commented: |
Archer Zhang (Azhng) commented: Full story: during the stability testing, we observed that contention-heavy workload like YCSB-A can only saturate up to 50% CPU/RAM resources. This gives the new contention event subsystem a lot of breathing room (in terms of CPU/RAM) to process all the contention events. In conclusion, there is no noticeable performance impact by turning contention event system on when running YCSB-A workload. For workload such as kv95 where there’s very little contention, the contention subsystem is effectively no-op, which means we also observed not noticeable performance impact. I’m worried that if the users runs multiple workloads, [e.g. YCSB-A (low resource consumption, high contention) + KV95 (high resource consumption, low contention) ], we will be operating in a less-than-ideal situation, where we have very little CPU/RAM resources, and we will need to process large amount of contention events. In short, this cluster setting is useful in this case. We don’t want to completely turn off the contention events system since it would still be useful for user to analyze the contention patterns. However, leaving this system on might also risk de-stablize the cluster. (might just be my paranoia, since I haven’t been able to destablize it myslef) |
Kevin Ngo (kevin-v-ngo) commented: |
Archer Zhang commented: Full story: during the stability testing, we observed that contention-heavy workload like YCSB-A can only saturate up to 50% CPU/RAM resources. This gives the new contention event subsystem a lot of breathing room (in terms of CPU/RAM) to process all the contention events. In conclusion, there is no noticeable performance impact by turning contention event system on when running YCSB-A workload. For workload such as kv95 where there’s very little contention, the contention subsystem is effectively no-op, which means we also observed not noticeable performance impact. I’m worried that if the users runs multiple workloads, [e.g. YCSB-A (low resource consumption, high contention) + KV95 (high resource consumption, low contention) ], we will be operating in a less-than-ideal situation, where we have very little CPU/RAM resources, and we will need to process large amount of contention events. In short, this cluster setting is useful in this case. We don’t want to completely turn off the contention events system since it would still be useful for user to analyze the contention patterns. However, leaving this system on might also risk de-stablize the cluster. (might just be my paranoia, since I haven’t been able to destablize it myslef) |
Stephanie Bodoff (stbof) commented: |
Exalate commented:
cockroachdb/cockroach#77623 --- Release note (sql change): introduce sql.contention.event_store.duration_threshold cluster setting. This cluster setting specifies the minimum contention duration to cause the contention events to be collected into crdb_internal.transaction_contention_events virtual table.
Jira Issue: DOC-2893
Jira Issue: DOC-4352
The text was updated successfully, but these errors were encountered: