TiDB v5.2 中文手册deadlock- �→ history- �→ collect- �→ retryable 新增 控 制INFORMATION �→ _SCHEMA. �→ DEADLOCKS 表中是否收集 可重试的死锁 错误信息。 TiDB 配置文件 security.auto �→ -tls 新增 控制 TiDB 启动 时是否自动生 成 TLS 证书,默 认值为 false。 TiDB 配置文件 stmt-summary 的自增列仅保证唯一,也能保证在单个 TiDB server 中自增,但不保证多个 TiDB server 中自增,不保 证自动分配的值的连续性,建议不要将缺省值和自定义值混用,若混用可能会收到 Duplicated Error 的错误信息。 • TiDB 可通过 tidb_allow_remove_auto_inc 系统变量开启或者关闭允许移除列的 AUTO_INCREMENT 属性。 删除列属性的语法是:ALTER TABLE 1.5.5 BR 遇到错误信息 Io(Os...),该如何处理? 这 类 问 题 几 乎 都 是 TiKV 在 写 盘 的 时 候 遇 到 的 系 统 调 用 错 误。 例 如 遇 到 Io(Os { code: 13, kind: �→ PermissionDenied...}) 或者 Io(Os { code: 2, kind: NotFound...}) 这类错误信息,首先检查备份目录 的0 码力 | 2259 页 | 48.16 MB | 1 年前3
TiDB v5.3 中文手册#2726 * 优化监控项和告警规则,提升了同步链路、内存 GC、存量数据扫描过程的可观测性 #2735 #1606 #3000 #2985 #2156 * 当同步任务状态正常时,不再显示历史错误信息,避免误导用户 #2242 2.2.6 Bug 修复 • TiDB – 修复在分区中下推聚合算子时,因浅拷贝 schema 列导致执行计划出错,进而导致执行时报错的问 题 #27797 #26554 的自增列仅保证唯一,也能保证在单个 TiDB server 中自增,但不保证多个 TiDB server 中自增,不保 证自动分配的值的连续性,建议不要将缺省值和自定义值混用,若混用可能会收到 Duplicated Error 的错误信息。 • TiDB 可通过 tidb_allow_remove_auto_inc 系统变量开启或者关闭允许移除列的 AUTO_INCREMENT 属性。 删除列属性的语法是:ALTER TABLE 1.5.5 BR 遇到错误信息 Io(Os...),该如何处理? 这 类 问 题 几 乎 都 是 TiKV 在 写 盘 的 时 候 遇 到 的 系 统 调 用 错 误。 例 如 遇 到 Io(Os { code: 13, kind: �→ PermissionDenied...}) 或者 Io(Os { code: 2, kind: NotFound...}) 这类错误信息,首先检查备份目录 的0 码力 | 2374 页 | 49.52 MB | 1 年前3
TiDB v5.4 中文手册的自增列既能保证唯一,也能保证在单个 TiDB server 中自增,但不保证多个 TiDB server 中自增,不 保证自动分配的值的连续性。不建议将缺省值和自定义值混用,若混用可能会收到 Duplicated Error 的错误信息。 • TiDB 可通过 tidb_allow_remove_auto_inc 系统变量开启或者关闭允许移除列的 AUTO_INCREMENT 属性。 删除列属性的语法是:ALTER TABLE 1.6.6 BR 遇到错误信息 Io(Os...),该如何处理? 这 类 问 题 几 乎 都 是 TiKV 在 写 盘 的 时 候 遇 到 的 系 统 调 用 错 误。 例 如 遇 到 Io(Os { code: 13, kind: �→ PermissionDenied...}) 或者 Io(Os { code: 2, kind: NotFound...}) 这类错误信息,首先检查备份目录 的 的挂载方式和文件系统,试试看备份到其它文件夹或者其它硬盘。 目前已知备份到 samba 搭建的网盘时可能会遇到 Code: 22(invalid argument) 错误。 6.3.1.6.7 BR 遇到错误信息 rpc error: code = Unavailable desc =...,该如何处理? 该问题一般是因为使用 BR 恢复数据的时候,恢复集群的性能不足导致的。可以从恢复集群的监控或者 TiKV0 码力 | 2852 页 | 52.59 MB | 1 年前3
TiDB v5.1 中文手册的自增列仅保证唯一,也能保证在单个 TiDB server 中自增,但不保证多个 TiDB server 中自增,不保 证自动分配的值的连续性,建议不要将缺省值和自定义值混用,若混用可能会收到 Duplicated Error 的错误信息。 • TiDB 可通过 tidb_allow_remove_auto_inc 系统变量开启或者关闭允许移除列的 AUTO_INCREMENT 属性。 删除列属性的语法是:ALTER TABLE 1.5.5 BR 遇到错误信息 Io(Os...),该如何处理? 这 类 问 题 几 乎 都 是 TiKV 在 写 盘 的 时 候 遇 到 的 系 统 调 用 错 误。 例 如 遇 到 Io(Os { code: 13, kind: �→ PermissionDenied...}) 或者 Io(Os { code: 2, kind: NotFound...}) 这类错误信息,首先检查备份目录 的 的挂载方式和文件系统,试试看备份到其它文件夹或者其它硬盘。 目前已知备份到 samba 搭建的网盘时可能会遇到 Code: 22(invalid argument) 错误。 6.3.1.5.6 BR 遇到错误信息 rpc error: code = Unavailable desc =...,该如何处理? 该问题一般是因为使用 BR 恢复数据的时候,恢复集群的性能不足导致的。可以从恢复集群的监控或者 TiKV0 码力 | 2189 页 | 47.96 MB | 1 年前3
TiDB v7.1 中文手册SQL_NO_CACHE 以避免 TTL Scan 查询对 TiKV block cache 造成影响 #43206 @lcwangchao – 改进 MAX_EXECUTION_TIME 相关错误信息使之与 MySQL 兼容 #43031 @dveeden – 在 IndexLookUp 中支持对分区表使用 MergeSort 算子 #26166 @Defined2014 – 改进 caching_sha2_password • Tools – Backup & Restore (BR) * 修复集群中 TiKV 出现宕机导致备份速度降低的问题 #42973 @YuJuncen * 修复某些情况下备份失败会导致错误信息不准确的问题 #43236 @YuJuncen – TiCDC * 修复 TiCDC 的时区设置问题 #8798 @hi-rustin * 修复 PD 地址或 leader 出现故障时 TiCDC 解决方案 3:使用乐观事务 乐观事务模型下,并不会有死锁问题,但应用端需要加上乐观事务在失败后的重试逻辑,具体重试逻辑见应 用端重试和错误处理。 4.8.4.1.4 解决方案 4:重试 正如错误信息中提示的那样,在应用代码中加入重试逻辑即可。具体重试逻辑见应用端重试和错误处理。 403 4.8.4.2 应用端重试和错误处理 尽管 TiDB 尽可能地与 MySQL 兼容,但其分布式系统的0 码力 | 4369 页 | 98.92 MB | 1 年前3
TiDB v6.1 中文手册的自增列既能保证唯一,也能保证在单个 TiDB server 中自增,但不保证多个 TiDB server 中自增,不 保证自动分配的值的连续性。不建议将缺省值和自定义值混用,若混用可能会收到 Duplicated Error 的错误信息。 • TiDB 可通过 tidb_allow_remove_auto_inc 系统变量开启或者关闭允许移除列的 AUTO_INCREMENT 属性。 删除列属性的语法是:ALTER TABLE 解决方案 3:使用乐观事务 乐观事务模型下,并不会有死锁问题,但应用端需要加上乐观事务在失败后的重试逻辑,具体重试逻辑见应 用端重试和错误处理。 4.8.4.1.4 解决方案 4:重试 正如错误信息中提示的那样,在应用代码中加入重试逻辑即可。具体重试逻辑见应用端重试和错误处理。 382 4.8.4.2 应用端重试和错误处理 尽管 TiDB 尽可能地与 MySQL 兼容,但其分布式系统的 如何判断当前集群存在写写冲突 可以通过 Grafana 监控查看集群写写冲突的情况: • 通过 TiDB 监控面板中 KV Errors 监控栏中 KV Backoff OPS 监控指标项,查看 TiKV 中返回错误信息的数量 图 91: kv-backoff-ops txnlock 表示集群中存在写写冲突,txnLockFast 表示集群中存在读写冲突。 • 通过 TiDB 监控面板中 KV Errors0 码力 | 3572 页 | 84.36 MB | 1 年前3
TiDB v6.5 中文手册中自增,使用AUTO_INCREMENT MySQL 兼容模式能 保证多个 TiDB server 中自增 ID,但不保证自动分配的值的连续性。不建议将缺省值和自定义值混用,若 混用可能会收到 Duplicated Error 的错误信息。 • TiDB 可通过 tidb_allow_remove_auto_inc 系统变量开启或者关闭允许移除列的 AUTO_INCREMENT 属性。 删除列属性的语法是:ALTER TABLE 解决方案 3:使用乐观事务 乐观事务模型下,并不会有死锁问题,但应用端需要加上乐观事务在失败后的重试逻辑,具体重试逻辑见应 用端重试和错误处理。 4.8.4.1.4 解决方案 4:重试 正如错误信息中提示的那样,在应用代码中加入重试逻辑即可。具体重试逻辑见应用端重试和错误处理。 4.8.4.2 应用端重试和错误处理 尽管 TiDB 尽可能地与 MySQL 兼容,但其分布式系统的性质导致了某些差异,其中之一就是事务模型。 如何判断当前集群存在写写冲突 可以通过 Grafana 监控查看集群写写冲突的情况: • 通过 TiDB 监控面板中 KV Errors 监控栏中 KV Backoff OPS 监控指标项,查看 TiKV 中返回错误信息的数量 图 88: kv-backoff-ops txnlock 表示集群中存在写写冲突,txnLockFast 表示集群中存在读写冲突。 • 通过 TiDB 监控面板中 KV Errors0 码力 | 4049 页 | 94.00 MB | 1 年前3
TiDB v8.1 中文手册参数时发生的类型转换错误 #7980 @HuSharp – 修复两数据中心部署切换时 Leader 无法迁移的问题 #7992 @TonsnakeLin – 修复 pd-ctl 中 PrintErrln 无法将错误信息输出到 stderr(标准错误)的问题 #8022 @HuSharp – 修复 PD 在生成 Merge 调度时可能出现的 panic 问题 #8049 @nolouch – 修复 GetAdditionalInfo 解决方案 3:使用乐观事务 乐观事务模型下,并不会有死锁问题,但应用端需要加上乐观事务在失败后的重试逻辑,具体重试逻辑见应 用端重试和错误处理。 4.8.4.1.4 解决方案 4:重试 正如错误信息中提示的那样,在应用代码中加入重试逻辑即可。具体重试逻辑见应用端重试和错误处理。 388 4.8.4.2 应用端重试和错误处理 尽管 TiDB 尽可能地与 MySQL 兼容,但其分布式系统的 如何判断当前集群存在写写冲突 可以通过 Grafana 监控查看集群写写冲突的情况: • 通过 TiDB 监控面板中 KV Errors 监控栏中 KV Backoff OPS 监控指标项,查看 TiKV 中返回错误信息的数量 图 91: kv-backoff-ops txnlock 表示集群中存在写写冲突,txnLockFast 表示集群中存在读写冲突。 • 通过 TiDB 监控面板中 KV Errors0 码力 | 4807 页 | 101.31 MB | 1 年前3
TiDB v8.0 中文手册#50427 @Defined2014 – 修复 opentracing 不能正常工作的问题 #50508 @Defined2014 – 修复 ALTER INSTANCE RELOAD TLS 报错时,错误信息不完整的问题 #50699 @dveeden – 修复 AUTO_INCREMENT 属性在分配自增 ID 时,由于不必要的事务冲突导致 ID 不连续的问题 #50819 @tiancaiamao 解决方案 3:使用乐观事务 乐观事务模型下,并不会有死锁问题,但应用端需要加上乐观事务在失败后的重试逻辑,具体重试逻辑见应 用端重试和错误处理。 4.8.4.1.4 解决方案 4:重试 正如错误信息中提示的那样,在应用代码中加入重试逻辑即可。具体重试逻辑见应用端重试和错误处理。 403 4.8.4.2 应用端重试和错误处理 尽管 TiDB 尽可能地与 MySQL 兼容,但其分布式系统的 如何判断当前集群存在写写冲突 可以通过 Grafana 监控查看集群写写冲突的情况: • 通过 TiDB 监控面板中 KV Errors 监控栏中 KV Backoff OPS 监控指标项,查看 TiKV 中返回错误信息的数量 图 91: kv-backoff-ops txnlock 表示集群中存在写写冲突,txnLockFast 表示集群中存在读写冲突。 • 通过 TiDB 监控面板中 KV Errors0 码力 | 4805 页 | 101.28 MB | 1 年前3
TiDB v8.4 中文手册解决方案 3:使用乐观事务 乐观事务模型下,并不会有死锁问题,但应用端需要加上乐观事务在失败后的重试逻辑,具体重试逻辑见应 用端重试和错误处理。 4.9.4.1.4 解决方案 4:重试 正如错误信息中提示的那样,在应用代码中加入重试逻辑即可。具体重试逻辑见应用端重试和错误处理。 459 4.9.4.2 应用端重试和错误处理 尽管 TiDB 尽可能地与 MySQL 兼容,但其分布式系统的 如何判断当前集群存在写写冲突 可以通过 Grafana 监控查看集群写写冲突的情况: • 通过 TiDB 监控面板中 KV Errors 监控栏中 KV Backoff OPS 监控指标项,查看 TiKV 中返回错误信息的数量 图 94: kv-backoff-ops txnlock 表示集群中存在写写冲突,txnLockFast 表示集群中存在读写冲突。 • 通过 TiDB 监控面板中 KV Errors 高可以适度调大改参数,比如 1024。 10.2.6.1.2 从 log 定位 I/O 问题 • 如果客户端报 server is busy 错误,特别是 raftstore is busy 的错误信息,会和 I/O 有相关性。 可以通过查看监控:grafana -> TiKV -> errors 监控确认具体 busy 原因。其中,server is busy 是 TiKV 自身的 流控机制,TiKV0 码力 | 5072 页 | 104.05 MB | 10 月前3
共 15 条
- 1
- 2













