首页 文章 精选 留言 我的

精选列表

搜索[分布式调度],共10000篇文章
优秀的个人博客,低调大师

TiDB 3.0.9 发布,分布式 NewSQL 数据库

TiDB3.0.9现已发布,该版本更新内容如下: TiDB Executor 修复聚合函数作用于枚举和集合列时结果不正确的问题#14364 Server 支持系统变量auto_increment_increment和auto_increment_offset#14396 新增tidb_tikvclient_ttl_lifetime_reach_total监控项,监控悲观事务 TTL 达到 10 分钟的数量#14300 执行 SQL 过程中当发生 panic 时输出导致 panic 的 SQL 信息#14322 statement summary 系统表新增plan和plan_digest字段,记录当前正在执行的plan和plan的签名#14285 配置项stmt-summary.max-stmt-count的默认值从100调整至200#14285 slow query 表新增plan_digest字段,记录plan的签名#14292 DDL 修复alter table ... add index语句创建匿名索引行为与 MySQL 不一致的问题#14310 修复drop table错误删除视图的问题#14052 Planner 提升类似select max(a), min(a) from t语句的性能。如果a列表上有索引,该语句会被优化为select * from (select a from t order by a desc limit 1) as t1, (select a from t order by a limit 1) as t2以避免全表扫#14410 TiKV Raftstore 提升 Raft 成员变更的速度#6421 Transaction 新增tikv_lock_manager_waiter_lifetime_duration、tikv_lock_manager_detect_duration、tikv_lock_manager_detect_duration监控项,用于监控waiter的生命周期、死锁检测耗费时间、wait table的状态#6392 通过优化配置项wait-for-lock-time默认值从3s调整到1s、wake-up-delay-duration默认值从100ms调整为20ms,以降低极端场景下 Region Leader 切换、切换死锁检测的 leader 导致的事务执行延迟#6429 修复 Region Merge 过程中可能导致死锁检测器 leader 角色误判的问题#6431 PD 新增 location label 的名字中允许使用斜杠/的功能#2083 修复因为不正确地统计了 tombstone 的标签,导致该统计信息不准的问题#2060 Tools TiDB Binlog Drainer 输出的 binlog 协议中新增 unique key 信息#862 Drainer 支持使用加密后的数据库连接密码#868 TiDB Ansible 优化 Lightning 部署,自动创建相关目录#1105 发布说明

优秀的个人博客,低调大师

TiDB 3.0.8 发布,分布式 NewSQL 数据库

TiDB3.0.8现已发布,该版本更新内容如下: TiDB SQL 优化器 修复 SQL Binding 因为 cache 更新不及时,导致绑定计划错误的问题#13891 修复当 SQL 包含符号列表(类似于 “?, ?, ?” 这样的占位符)时,SQL Binding 可能失效的问题#14004 修复 SQL Binding 由于原 SQL 以;结尾而不能创建/删除的问题#14113 修复PhysicalUnionScan算子没有正确设置统计信息,导致查询计划可能选错的问题#14133 移除minAutoAnalyzeRatio约束使自动 analyze 更及时#14015 SQL 执行引擎 修复INSERT/REPLACE/UPDATE ... SET ... = DEFAULT语法会报错的问题,修复DEFAULT表达式与虚拟生成列配合使用会报错的问题#13682 修复INSERT语句在进行字符串类型到浮点类型转换时,可能会报错的问题#14011 修复HashAggExecutor 并发值未被正确初始化,导致聚合操作执行在一些情况下效率低的问题#13811 修复 group by item 被括号包含时执行报错的问题#13658 修复 TiDB 没有正确计算 group by item,导致某些情况下 OUTER JOIN 执行会报错的问题#14014 修复向 Range 分区表写入超过 Range 外的数据时,报错信息不准确的问题#14107 鉴于 MySQL 8 即将废弃PadCharToFullLength,revert PR#10124并撤销PadCharToFullLength的效果,以避免一些特殊情况下查询结果不符合预期#14157 修复ExplainExec中没有保证close()的调用而导致EXPLAIN ANALYZE时造成 goroutine 泄露的问题#14226 DDL 优化 “change column”/“modify column” 的输出的报错信息,让人更容易理解#13796 新增SPLIT PARTITION TABLE语法,支持分区表切分 Region 功能#13929 修复创建索引时,没有正确检查长度,导致索引长度超过 3072 字节没有报错的问题#13779 修复由于分区表添加索引时若花费时间过长,可能导致输出GC life time is shorter than transaction duration报错信息的问题#14132 修复在DROP COLUMN/MODIFY COLUMN/CHANGE COLUMN时没有检查外键导致执行SELECT * FROM information_schema.KEY_COLUMN_USAGE语句时发生 panic 的问题#14105 Server Statement Summary 功能改进: 新增大量的 SQL 指标字段,便于对 SQL 进行更详细的统计分析#14151,#14168 新增stmt-summary.refresh-interval参数用于控制定期将events_statements_summary_by_digest表中过期的数据移到events_statements_summary_by_digest_history表,默认间隔时间:30min#14161 新增events_statements_summary_by_digest_history表,保存从events_statements_summary_by_digest中过期的数据#14166 修复执行 RBAC 相关的内部 SQL 时,错误输出 binlog 的问题#13890 新增server-version配置项来控制修改 TiDB server 版本的功能#13906 新增通过 HTTP 接口恢复 TiDB binlog 写入功能#13892 将GRANT roles TO user所需要的权限由GrantPriv修改为ROLE_ADMIN或SUPER,以与 MySQL 保持一致#13932 当GRANT语句未指定 database 名时,TiDB 行为由使用当前 database 改为报错No database selected,与 MySQL 保持兼容#13784 修改REVOKE语句执行权限从SuperPriv改成用户只需要有对应 Schema 的权限,就可以执行REVOKE语句,与 MySQL 保持一致#13306 修复GRANT ALL语法在没有WITH GRANT OPTION时,错误地将GrantPriv授权给目标用户的问题#13943 修复LoadDataInfo中调用addRecord报错时,报错信息不包含导致LOAD DATA语句行为不正确信息的问题#13980 修复因查询中多个 SQL 语句共用同一个StartTime导致输出错误的慢查询信息的问题#13898 修复batchClient处理大事务时可能造成内存泄露的问题#14032 修复system_time_zone固定显示为CST的问题,现在 TiDB 的system_time_zone会从mysql.tidb表中的systemTZ获取#14086 修复GRANT ALL语法授予权限不完整(例如Lock_tables_priv)的问题#14092 修复Priv_create_user权限不能CREATE ROLE和DROP ROLE的问题#14088 将ErrInvalidFieldSize的错误码从1105(Unknow Error)改成3013#13737 新增SHUTDOWN命令用于停止 TiDB Server,并新增ShutdownPriv权限#14104 修复DROP ROLE语句的原子性问题,避免语句执行失败时,一些 ROLE 仍然被非预期地删除#14130 修复 3.0 以下版本升级到 3.0 时,tidb_enable_window_function在SHOW VARIABLE语句的查询结果错误输出 1 的问题,修复后输出 0#14131 修复 TiKV 节点下线时,由于gcworker持续重试导致可能出现 goroutine 泄露的问题#14106 在慢日志中记录 Binlog 的Prewrite的时间,提升问题追查的易用性#14138 tidb_enable_table_partition变量支持 GLOBAL SCOPE 作用域#14091 修复新增权限时未正确将新增的权限赋予对应的用户导致用户权限可能缺失或者被误添加的问题#14178 修复当 TiKV 链接断开时,由于rpcClient不会关闭而导致CheckStreamTimeoutLoopgoroutine 会泄露的问题#14227 支持基于证书的身份验证(使用文档)#13955 Transaction 创建新集群时,tidb_txn_mode变量的默认值由""改为"pessimistic"#14171 修复悲观事务模式,事务重试时单条语句的等锁时间没有被重置导致等锁时间过长的问题#13990 修复悲观事务模式,因对没有修改的数据未加锁导致可能读到不正确数据的问题#14050 修复 mocktikv 中 prewrite 时,没有区分事务类型,导致重复的 insert value 约束检查#14175 修复session.TxnState状态为Invalid时,事务没有被正确处理导致 panic 的问题#13988 修复 mocktikv 中ErrConfclit结构未包含ConflictCommitTS的问题#14080 修复 TiDB 在 Resolve Lock 之后,没有正确处理锁超时检查导致事务卡住的问题#14083 Monitor LockKeys新增pessimistic_lock_keys_duration监控#14194 TiKV Coprocessor 修改 Coprocessor 遇到错误时输出日志的级别从error改成warn#6051 修改统计信息采样数据的更新行为从直接更行改成先删除再插入,更新行为与 tidb-server 保持一致#6069 Raftstore 修复因重复向peerfsm发送 destory 消息,peerfsm被多次销毁导致 panic 的问题#6297 split-region-on-table默认值由true改成false,默认关闭按 table 切分 Region 的功能#6253 Engine 修复极端条件下因 RocksDB 迭代器错误未正确处理导致可能返回空数据的问题#6326 事务 修复悲观锁因锁未被正确清理导致 Key 无法写入数据,且出现 GC 卡住的问题#6354 优化悲观锁等锁机制,提升锁冲突严重场景的性能#6296 将内存分配库的默认值由tikv_alloc/default改成jemalloc#6206 PD Client 新增通过context创建新 client,创建新 client 时可设置超时时间#1994 新增创建KeepAlive连接功能#2035 优化/api/v1/regionsAPI 的性能#1986 修复删除tombstone状态的 Store 可能会导致 panic 的隐患#2038 修复从磁盘加载 Region 信息时错误的将范围有重叠的 Region 删除的问题#2011,#2040 将 etcd 版本从 3.4.0 升级到 3.4.3 稳定版本,注意升级后只能通过 pd-recover 工具降级#2058 Tools TiDB Binlog 修复 Pump 由于没有收到 DDL 的 commit binlog 导致 binlog 被忽略的问题#853 TiDB Ansible 回滚被精简的配置项#1053 优化滚动升级时 TiDB 版本检查的逻辑#1056 TiSpark 版本升级到 2.1.8#1061 修复 Grafana 监控上 PD 页面 Role 监控项显示不正确的问题#1065 优化 Grafana 监控上 TiKV Detail 页面上Thread Voluntary Context Switches和Thread Nonvoluntary Context Switches监控项#1071 详细信息: https://pingcap.com/docs-cn/stable/releases/3.0.8/ https://github.com/pingcap/tidb/releases/tag/v3.0.8

优秀的个人博客,低调大师

TiDB 2.1.19 发布,分布式 NewSQL 数据库

TiDB2.1.19已经发布了,该版本更新内容如下: TiDB SQL 优化器 优化select max(_tidb_rowid) from t的场景,避免全表扫#13294 修复当查询语句中赋予用户变量错误的值且将谓词下推后导致错误的输出结果#13230 修复更新统计信息时可能存在数据竞争,导致统计信息不准确的问题#13690 修复UPDATE语句中同时包含子查询和 stored generated column 时结果错误的问题;修复UPDATE语句中包含不同数据库的两个表名相同时,UPDATE执行报错的问题#13357 修复PhysicalUnionScan算子没有正确设置统计信息,导致查询计划可能选错的问题#14134 移除minAutoAnalyzeRatio约束使自动ANALYZE更及时#14013 当WHERE子句上有UNIQUE KEY的等值条件时,估算行数应该不大于1#13385 SQL 执行引擎 修复ConvertJSONToInt中使用int64作为uint64的中间解析结果,导致精度溢出的问题#13036 修复查询中包含SLEEP函数时(例如select 1 from (select sleep(1)) t;)),由于列裁剪导致查询中的sleep(1)失效的问题#13039 通过实现在INSERT ON DUPLICATE UPDATE语句中复用Chunk来降低内存开销#12999 给slow_query表添加事务相关的信息段#13129,如下: Prewrite_time Commit_time Get_commit_ts_time Commit_backoff_time Backoff_types Resolve_lock_time Local_latch_wait_time Write_key Write_size Prewrite_region Txn_retry 修复UPDATE语句中包含子查询时转换子查询出现的错误和当UPDATE的WHERE条件中包含子查询时更新失败的问题#13120 支持在分区表上执行ADMIN CHECK TABLE#13143 修复ON UPDATE CURRENT_TIMESTAMP作为列的属性且指定浮点精度时,SHOW CREATE TABLE等语句显示精度不完整的问题#12462 修复在DROP/MODIFY/CHANGE COLUMN时没有检查外键导致执行SELECT * FROM information_schema.KEY_COLUMN_USAGE语句时发生 panic 的问题#14162 修复 TiDB 开启Streaming后返回数据可能重复的问题#13255 修复夏令时导致的“无效时间格式”问题#13624 修复整型数据被转换为无符号Real/Decimal类型时,精度可能丢失的问题#13756 修复Quote函数处理null值时返回值类型出错的问题#13681 修复从字符串解析日期时,由于使用golang time.Local本地时区导致解析结果的时区不正确的问题#13792 修复builtinIntervalRealSig的实现中,由于binSearch方法不会返回 error,导致最终结果可能不正确的问题#13768 修复INSERT语句在进行字符串类型到浮点类型转换时,可能会报错的问题#14009 修复sum(distinct)函数输出结果不正确的问题#13041 修复由于对jsonUnquoteFunction函数的返回类型长度赋值不正确的值,导致在union中同位置数据上进行cast转换时会截断数据的问题#13645 修复由于权限检查过于严格导致设置密码失败的问题#13805 Server 修复KILL CONNECTION可能出现 goroutine 泄漏的问题#13252 新增通过 HTTP API 的info/all接口获取所有 TiDB 节点的 binlog 状态功能#13188 修复在 Windows 上 build TiDB 项目失败的问题#13650 新增server-version配置项来控制修改 TiDB server 版本的功能#13904 修复通过 Go1.13 版本编译的二进制程序plugin不能正常运行的问题#13527 DDL 新增创建表时如果表包含COLLATE则列的COLLATE使用表的COLLATE#13190 新增创建表时限制索引名字的长度的功能#13311 修复 rename table 时未检查表名长度的问题#13345 新增BIT列的宽度范围检查的功能#13511 优化change/modify column的输出的错误信息,让人更容易理解#13798 修复执行drop column操作且下游 Drainer 还没有执行此drop column操作时,下游可能会收到不带此列的 DML 的问题#13974 TiKV Raftstore 修复 Region merge 和应用 Compact log 过程中系统若有重启,当重启时由于未正确设置is_merging的值导致系统 panic 的问题#5884 Importer 取消 gRPC 的消息长度限制#5809 PD 提升获取 Region 列表的 HTTP API 性能#1988 升级 etcd,修复 etcd PreVote 无法选出 leader 的问题(升级后无法降级)#2052 Tools TiDB Binlog 优化通过 binlogctl 输出的节点状态信息#777 修复当 Drainer 过滤配置为nil时 panic 的问题#802 优化 Pump 的Graceful退出方式#825 新增 Pump 写 binlog 数据时更详细的监控指标#830 优化 Drainer 在执行 DDL 后刷新表结构信息的逻辑#836 修复 Pump 在没有收到 DDL 的 commit binlog 时该 binlog 被忽略的问题#855 TiDB Ansible TiDB 服务Uncommon Error OPM监控项更名为Write Binlog Error并增加对应的告警#1038 升级 TiSpark 版本为 2.1.8#1063 发布说明

优秀的个人博客,低调大师

TiDB 2.1.18 发布,分布式 NewSQL 数据库

TiDB2.1.18已经发布了,该版本更新内容如下: TiDB SQL 优化器 修复 Feedback 切分查询范围出错的问题#12172 修复点查中权限检查不正确的问题#12341 将 Limit 算子下推到IndexLookUpReader执行逻辑中,优化select ... limit ... offset ...的执行性能#12380 支持在ORDER BY、GROUP BY和LIMIT OFFSET中使用参数#12514 修复 partition 表上的 IndexJoin 返回错误结果的问题#12713 修复 TiDB 中str_to_date函数在日期字符串和格式化字符串不匹配的情况下,返回结果与 MySQL 不一致的问题#12757 修复当查询条件中包含 cast 函数时 outer join 被错误转化为 inner join 的问题#12791 修复 AntiSemiJoin 的 join 条件中错误的表达式传递#12800 SQL 执行引擎 修复时间取整不正确的问题 (如 2019-09-11 11:17:47.999999666 应该被取整到 2019-09-11 11:17:48)#12259 修复PREPARE语句类型没有记录在监控中的问题#12329 修复FROM_UNIXTIME在检查 NULL 值时 panic 的错误#12572 修复YEAR类型数据插入非法年份时,结果为NULL而不是0000的兼容性问题#12744 改进 AutoIncrement 列隐式分配时的行为,与 MySQL 自增锁的默认模式 (“consecutive” lock mode) 保持一致:对于单行 Insert 语句的多个自增 AutoIncrement ID 的隐式分配,TiDB 保证分配值的连续性。该改进保证 JDBCgetGeneratedKeys()方法在任意场景下都能得到正确的结果。#12619 修复当 HashAgg 作为 Apply 子节点时查询 hang 住的问题#12769 修复逻辑表达式 AND / OR 在涉及类型转换时返回错误结果的问题#12813 Server 修复KILL TIDB QUERY语法对SLEEP()语句无效的问题#12159 修复 AUTO INCREMENT 分配 MAX int64 和 MAX uint64 没有报错的问题#12210 修复日志级别设置为ERROR时,慢日志不会被记录的问题#12373 将缓存 100 个 Schema 变更相关的表信息调整成 1024 个,且支持通过tidb_max_delta_schema_count系统变量修改#12515 将 SQL 的统计方式开始时间由“开始执行”改为“开始编译”,使得 SQL 性能统计更加准确#12638 在 TiDB 日志中添加set session autocommit的记录#12568 将 SQL 的开始时间记录在SessionVars中,避免计划执行时,该时间被重置#12676 在Order By/Group By/Limit Offset字句中支持?占位符#12514 慢日志中添加Prev_stmt字段,用于最后一条语句是COMMIT时输出前一条语句#12724 当一个显式提交的事务COMMIT时出错,在日志中记录COMMIT前一条语句#12747 优化在 TiDB Server 执行 SQL 时,对前一条语句的保存方式以提升性能#12751 修复skip-grant-table=true时,FLUSH PRIVILEGES语句导致系统 Panic 的问题#12816 将 AutoID 的最小申请步长从 1000 增加为 30000,避免短时间大量写入时频繁请求 AutoID 造成性能瓶颈#12891 修复 Prepared 语句在 TiDB 发生 panic 时错误日志中未打印出错 SQL 的问题#12954 修复 COM_STMT_FETCH 慢日志时间记录和 MySQL 不一致问题#12953 当遇到写冲突时,在报错信息中添加错误码,以方便对冲突原因进行诊断#12878 DDL 为避免误操作,TiDB 默认不再允许删除列的AUTO INCREMENT属性,当确实需要删除时,请更改系统变量tidb_allow_remove_auto_inc;相关文档请见:TiDB 专用系统变量和语法#12146 支持 Create Table 语句中建唯一索引时带多个 Unique#12469 修复CreateTable语句中指定外键约束时,外键表在没有指定 Database 时未能使用主表的 Database 导致报错的问题#12678 修复ADMIN CANCEL DDL JOBS时报invalid list index错的问题#12681 Monitor Backoff 监控添加类型,且补充之前没有统计到的 Backoff,比如 commit 时遇到的 Backoff#12326 添加统计 Add Index 操作进度的监控#12389 PD 修复 pd-ctl--help命令输出内容#1772 Tools TiDB Binlog 修复ALTER DATABASE相关 DDL 会导致 Drainer 异常退出的问题#770 支持对 Commit binlog 查询事务状态信息,提升同步效率#761 修复当 Drainer 的start_ts大于 Pump 中最大的commit_ts时候有可能引起 Pump panic 的问题#759 TiDB Ansible TiDB Binlog 增加 queue size 和 query histogram 监控项#952 更新 TiDB 告警表达式#961 新增配置文件检查功能,部署或者更新前会检查配置是否合理#973 TiDB 新增加索引速度监控项#987 更新 TiDB Binlog 监控 Dashboard,兼容 4.6.3 版本的 Grafana#993 详细信息: https://github.com/pingcap/tidb/releases/tag/v2.1.18 https://pingcap.com/docs-cn/stable/releases/2.1.18/

优秀的个人博客,低调大师

TiDB 3.0.7 发布,分布式 NewSQL 数据库

距离TiDB 3.0.6 发布没多久,目前,TiDB3.0.7也已发布,该版本的一些更新内容如下: SQL优化器 修复 Natural Outer Join 和 Outer Join 使用USING语法时,not null标记没有被重置导致结果错误的问题#13739 修复更新统计信息时可能存在数据竞争,导致统计信息不准确的问题#13687 SQL执行引擎 修复builtinIntervalRealSig的实现中,binSearch方法不会返回 error,导致最终结果可能不正确的问题#13767 修复整型数据被转换为无符号浮点/Decimal 类型时,精度可能丢失造成数据错误的问题#13755 服务器 修复 TiDB server 本地时间落后于 TSO 时间时,可能造成锁的 TTL 过大的问题#13868 修复从字符串解析日期时,由于使用本地时区 (gotime.Local) 而导致解析结果的时区不正确的问题#13793 TiKV 判断死锁检测服务的第一个 Region 时,加上 Region 合法检测,防止信息不完整的 Region 导致误判#6110 修复潜在的内存泄漏问题#6128 详细信息: https://pingcap.com/docs-cn/stable/releases/3.0.7/ https://github.com/pingcap/tidb/releases/tag/v3.0.7

优秀的个人博客,低调大师

TiDB 3.0.6 发布,分布式 NewSQL 数据库

TiDB 3.0.6已经发布,更新内容如下: SQL 优化器 修复窗口函数 AST Restore SQL 文本后结果不正确问题,over w不应被 restore 成over (w)#12933 修复 stream aggregation 下推给 double read 的问题#12690 修复 SQL bind 中引号处理不正确的问题#13117 优化select max(_tidb_rowid) from t场景,避免全表扫#13095 修复当查询语句中包含变量赋值表达式时查询结果不正确的问题#13231 修复UPDATE语句中同时包含子查询和 generated column 时结果错误的问题;修复UPDATE语句中包含不同数据库的两个表名相同的表时,UPDATE执行报错的问题#13350 支持用_tidb_rowid做点查#13416 修复分区表统计信息使用错误导致生成执行计划不正确的问题#13628 SQL 执行引擎 修复 year 类型对于无效值的处理时和 MySQL 不兼容问题#12745 在INSERT ON DUPLICATE UPDATE语句中复用Chunk以降低内存开销#12998 添加内置函数JSON_VALID的支持#13133 支持在分区表上执行ADMIN CHECK TABLE#13140 修复对空表进行FAST ANALYZE时 panic 的问题#13343 修复在包含多列索引的空表上执行 Fast Analyze 时 panic 的问题#13394 修复当WHERE子句上有 UNIQUE KEY 的等值条件时,估算行数大于 1 的问题#13382 修复当 TiDB 开启Streaming后返回数据有可能重复的问题#13254 将CMSketch中出现次数最多的 N 个值抽取出来,提高估算准确度#13429 Server 当 gRPC 请求超时时,提前让发往 TiKV 的请求失败#12926 添加以下虚拟表:#13009 performance_schema.tidb_profile_allocs performance_schema.tidb_profile_block performance_schema.tidb_profile_cpu performance_schema.tidb_profile_goroutines 修复 query 在等待悲观锁时,kill query 不生效的问题#12989 当悲观事务上锁失败,且事务只涉及一个 key 的修改时,不再异步回滚#12707 修复 split Region 请求的 response 为空时 panic 的问题#13092 悲观事务在其他事务先锁住导致上锁失败时,避免重复 backoff#13116 修改 TiDB 检查配置时的行为,出现不能识别的配置选项时,打印警告日志#13272 支持通过/info/all接口获取所有 TiDB 节点的 binlog 状态#13187 修复 kill connection 时可能出现 goroutine 泄漏的问题#13251 让innodb_lock_wait_timeout参数在悲观事务中生效,用于控制悲观锁的等锁超时时间#13165 当悲观事务的 query 被 kill 后,停止更新悲观事务的 TTL,避免其他的事务做不必要的等待#13046 DDL 修复SHOW CREATE VIEW结果与 MySQL 不一致的问题#12912 支持基于 UNION 创建 View,例如create view v as select * from t1 union select * from t2#12955 给slow_query表添加更多事务相关的字段:#13072 Prewrite_time Commit_time Get_commit_ts_time Commit_backoff_time Backoff_types Resolve_lock_time Local_latch_wait_time Write_key Write_size Prewrite_region Txn_retry 创建表时如果表包含 collate 则列使用表的 collate 而不是系统默认的字符集#13174 创建表时限制索引名字的长度#13310 修复 rename table 时未检查表名长度的问题#13346 新增alter-primary-key配置来支持 TiDB add/drop primary key,该配置默认关闭#13522 TiKV 修复acquire_pessimistic_lock接口返回错误txn_size的问题#5740 限制 GC worker 每秒写入量,降低对性能的影响#5735 优化 lock manager 的准确度#5845 悲观锁支持innodb_lock_wait_timeout#5848 添加 Titan 相关配置检测#5720 支持用 tikv-ctl 动态修改 GC 限流配置:tikv-ctl --host=ip:port modify-tikv-config -m server -n gc.max_write_bytes_per_sec -v 10MB#5957 减少无用的 clean up 请求,降低死锁检测器的压力#5965 悲观事务 prewrite 时避免 TTL 被缩短#6056 修复 Titan 可能发生 missing blob file 的问题#5968 修复 Titan 可能导致RocksDBOptions不生效的问题#6009 PD 为每个过滤器添加一个名为ActOn的新维度,以指示每个 scheduler 和 checker 受过滤器的影响。删除两个未使用的过滤器:disconnectFilter和rejectLeaderFilter#1911 当 PD 生成时间戳的时间超过5毫秒时,将打印一条 warning 日志#1867 当存在 endpoint 不可用时,降低 client 日志级别#1856 修复region_syncer同步时 gRPC 消息包可能过大的问题#1952 Tools TiDB Binlog Drainer 配置initial-commit-ts为 -1 时,从 PD 处获取初始同步时间戳#788 Drainer checkpoint 存储与下游解耦,支持选择配置 checkpoint 保存到 MySQL 或者本地文件#790 修复 Drainer 在配置同步库表过滤使用空值会导致 Panic 的问题#801 修复 Drainer 因为向下游应用 Binlog 失败而 Panic 后进程没有退出而是进入死锁状态的问题#807 修复 Pump 下线因为 gRPC 的GracefulStop流程而 hang 住的问题#817 修复 Drainer 在 TiDB 执行DROP COLUMNDDL 期间收到缺少一列的 binlog 而同步出错的问题(要求 TiDB 3.0.6 以上)#827 TiDB Lightning TiDB Backend 模式新增max-allowed-packet配置项,默认值为 64M#248 详细信息:https://pingcap.com/docs-cn/stable/releases/3.0.6/

优秀的个人博客,低调大师

Git 2.24 发布,分布式版本控制系统

Git 2.24已经发布,该版本包含了来自 78 个贡献者的功能增加和 bug 修复。其中带来一些亮点,比如特性宏,commit-graph,新可选全新的仓库历史重写工具 filter-repo 等,内容如下: Feature macros 在 Git 2.24 中,可以选择使用 feature 宏功能(一种包含许多其他功能的 Git 配置)。这些是由 Git 的开发人员手动选择的,通过它可以选择加入某个功能或根据存储库的特性采用一些设置。例如,假设有一个特别大的存储库,当我们发现其运行缓慢时,通常会将 index.version 设置为 4,但这并不是好的解决方法。而现在有另外一种选择:通过下面方式启用 feature.manyFiles: git config feature.manyFiles true 目前 feature 宏功能只包括 feature.experimenta l和 feature.manyFiles,以后可能会新添加新的宏。 Commit graphs by default(默认启用提交图) 在 Git 2.24 中,默认会启用提交图,此前该功能是在实验性 core.commitGraph 配置启用,但经过大量测试,已经可以默认启用。除了之外,还有一些提交图其他的改进: 所有 commit-graph 子命令(例如 git commit-graph write,git commit-graph verify 等)都支持 -[no-] progress。 引入了一个新的配置值,用于在获取时自动更新 commit-graph 文件,该配置值利用提交图链将部分历史记录写入提交图链中,以供以后压缩。 修复了许多错误,以改善 commit-graph 命令的性能和可靠性,尤其是在面对损坏的存储库时。 commit-graph 命令现在还支持Git的最新跟踪机制 trace2 Alternative history rewriting tools 如果想对存储库的历史记录执行复杂的操作(例如从存储库的历史记录中删除文件或提取与一个目录有关的历史记录),可以试用 git filter-branch。git filter-branch 是一个历史悠久的且功能强大的重写历史记录的工具。 但是,git filter-branch 使用非常复杂,而且操作特别慢,并且经常会导致很多意想不到的误操作导致仓库库损坏和数据丢失。 Git 2.24 中推荐 git filter-repo(github/newren/git-filter-repo)。git filter-repo 可以避免用户在使用 git filter-branch 遇到的很多坑。git filter-repo 无需按顺序重新处理每个提交,而是对历史记录进行高效的流表示,可以更高效地运作。该工具功能极其强大,其所有功能都具有详细的文档。下面是有关如何使用 git filter-repo 的一些特点: git filter-repo --analyze 提供了易于理解的度量选择,用于分析存储库的大小。这包括每种对象有多少个,文件和目录最大,扩展名占用最多空间等等 可以使用 --path-{glob,regex} 和类似的选项来过滤存储库的历史记录,使其仅包含某些路径 重写历史记录时,所有重写的提交(连同其祖先)将获得一个新的 SHA-1 来识别它们。默认情况下,git filter-repo 会更新对这些 SHA-1 的所有其他引用,就像其他引用它们的提交消息一样 可以对历史记录执行"查找和替换"操作 git filter-repo 是可扩展的,它提供了一个灵活的接口,用于在 Python 中指定回调以及定义新的子命令 更多详情请见发布说明。 参考: http://baijiahao.baidu.com/s?id=1649358058435736187&wfr=spider&for=pc

优秀的个人博客,低调大师

TiDB 3.0.5 发布,分布式 NewSQL 数据库

TiDB 3.0.5已经发布,内容如下: SQL 优化器 支持对 Window Functions 进行边界检查#12404 修复 partition 表上的IndexJoin返回错误结果的问题#12712 修复外连接 Apply 算子上层的ifnull函数返回错误结果的问题#12694 修复当UPDATE的where条件中包含子查询时更新失败的问题#12597 修复当查询条件中包含cast函数时 outer join 被错误转化为 inner join 的问题#12790 修复AntiSemiJoin的 join 条件中错误的表达式传递#12799 修复初始化统计信息时由于浅拷贝造成的统计信息出错问题#12817 修复 TiDB 中str_to_date函数在日期字符串和格式化字符串不匹配的情况下,返回结果与 MySQL 不一致的问题#12725 SQL 执行引擎 修复在from_unixtime函数处理 null 时发生 panic 的问题#12551 修复 Admin Cancel DDL jobs 时报invalid list index错的问题#12671 修复使用 Window Functions 时发生数组越界的问题#12660 改进AutoIncrement列隐式分配时的行为,与 MySQL 自增锁的默认模式 (“consecutive” lock mode) 保持一致:对于单行 Insert 语句的多个自增AutoIncrementID 的隐式分配,TiDB 保证分配值的连续性。该改进保证 JDBCgetGeneratedKeys()方法在任意场景下都能得到正确的结果。#12602 修复当HashAgg作为 Apply 子节点时查询 hang 住的问题#12766 修复逻辑表达式AND或OR在涉及类型转换时返回错误结果的问题#12811 Server 实现修改事务 TTL 的接口函数,以助后续支持大事务#12397 支持将事务的 TTL 按需延长(最长可到 10min),用于支持悲观事务#12579 将 TiDB 缓存 schema 变更及相关表信息的次数从 100 调整为 1024,且支持通过tidb_max_delta_schema_count系统变量修改#12502 更新了kvrpc.Cleanup协议的行为,不再清理未超时事务的锁#12417 支持将 Partition 表信息记录到information_schema.tables表#12631 支持通过region-cache-ttl配置修改 Region Cache 的 TTL#12683 支持在慢日志中打印执行计划压缩编码后的信息,此功能默认开启,可以通过slow-log-plan配置或者tidb_record_plan_in_slow_log变量进行开关控制。另外支持tidb_decode_plan函数将慢日志中的执行计划列编码信息解析成执行计划信息。#12808 在information_schema.processlist表中支持显示内存使用信息#12801 修复 TiKV Client 判断连接空闲时可能出错并出现非预期的告警的问题#12846 修复tikvSnapshot没有正确对BatchGet()的 KV 结果进行缓存,导致INSERT IGNORE语句性能有所下降的问题#12872 修复了因建立到部分 KV 服务的连接较慢最终导致 TiDB 响应速度相对变慢的情况#12814 DDL 修复Create Table操作对 Set 列不能正确设置 Int 类型默认值的问题#12267 支持Create Table语句中建唯一索引时带多个 Unique#12463 修复使用Alter Table添加 Bit 类型列时,对存在的行填充此列的默认值可能出错的问题#12489 修复 Range 分区表以 Date 或 Datetime 类型列作为分区键时,添加分区失败的问题#12815 对于 Date 或 Datetime 类型列作为分区键的 Range 分区表,在建表或者添加分区时,支持检查分区类型与分区键类型的统一性#12792 在创建 Range 分区表时,添加对 Unique Key 列集合需大于等于分区列集合的检查#12718 Monitor 添加统计 Commit 与 Rollback 操作的监控到Transaction OPS面板#12505 添加统计Add Index操作进度的监控#12390 TiKV Storage 悲观事务新特性:事务 Cleanup 接口支持只清理 TTL 已经过期的锁#5589 修复事务 Primary key 的 Rollback 被折叠的问题#5646,#5671 修复悲观锁下点查可能返回历史旧版本的问题#5634 Raftstore 减少 Raftstore 消息的 flush 操作,以提升性能,减少 CPU 占用#5617 优化获取 Region 的大小和 key 个数估计值的开销,减少心跳的开销,降低 CPU 占用#5620 修复 Raftstore 取到非法数据时打印错误日志并 panic 的问题#5643 Engine 打开 RocksDBforce_consistency_checks,提高数据安全性#5662 修复 Titan 并发 flush 情况下有可能造成数据丢失的问题#5672 更新 rust-rocksdb 版本以避开 intra-L0 compaction 导致 TiKV 崩溃重启的问题#5710 PD 提高 Region 占用空间的精度#1782 修复--help命令输出内容#1763 修复 TLS 开启后 http 请求重定向失败的问题#1777 修复 pd-ctl 使用store shows limit命令 panic 的问题#1808 提高 label 监控可读性以及当 leader 发生切换后重置原 leader 的监控数据,防止误报#1815 Tools TiDB Binlog 修复ALTER DATABASE相关 DDL 会导致 Drainer 异常退出的问题#769 支持对 Commit binlog 查询事务状态信息,提升同步效率#757 修复当 Drainer 的start_ts大于 Pump 中最大的commit_ts时,有可能引起 Pump panic 的问题#758 TiDB Lightning 整合 Loader 全量逻辑导入功能,支持配置 backend 模式#221 TiDB Ansible 增加 TiDB 添加索引速度的监控#986 精简配置文件内容,移除不需要用户配置的参数#1043c,#998 修复 performance read 和 performance write 监控表达式错误的问题#e90e7 更新 raftstore CPU 使用率的监控显示方式以及 raftstore CPU 使用率的告警规则#992 更新Overview监控面板中 TiKV 的 CPU 监控项,过滤掉多余的监控内容#1001 来源: https://pingcap.com/docs-cn/v3.0/releases/3.0.5/

优秀的个人博客,低调大师

TiDB 3.0.4  发布,分布式 NewSQL 数据库

TiDB 3.0.4已经发布,内容如下: 新特性 新增系统表performance_schema.events_statements_summary_by_digest,用于排查 SQL 级别的性能问题 TiDB 的SHOW TABLE REGIONS语法新增WHERE条件子句 Reparo 新增worker-count和txn-batch配置项,用于控制恢复速率 改进提升 TiKV 支持批量Split和空的Split命令,使得 Split 可以批量进行 TiKV 添加 RocksDB 双向链表支持,提升逆序扫性能 Ansible 新增iosnoop和funcslower两个 perf 工具,方便诊断集群状态 TiDB 优化慢日志输出内容,删除冗余字段 行为变更 TiDB 修改txn-local-latches.enable默认值为false,默认不启用本地事务冲突检测 TiDB 添加全局作用域系统变量tidb_txn_mode,并默认允许使用悲观锁,请注意默认情况下,TiDB 仍然使用乐观锁 TiDB 慢日志中的Index_ids字段替换为Index_names字段,提升慢日志易用性 TiDB 配置文件中添加split-region-max-num参数,用于调整SPLIT TABLE语法允许的最大 Region 数量 TiDB 修改 SQL 超出内存限制后的行为,从断开链接修改为返回Out Of Memory Quota错误 为避免误操作,TiDB 默认不再允许删除列的AUTO_INCREMENT属性,当确实需要删除时,请更改系统变量tidb_allow_remove_auto_inc 问题修复 TiDB 修复特殊语法PRE_SPLIT_REGIONS没有使用注释的方式向下游同步的问题 TiDB 修复使用游标获取PREPARE+EXECUTE执行结果时,慢日志不正确的问题 PD 修复相邻小 Region 无法 Merge 的问题 TiKV 修复空闲集群中文件描述符泄漏导致长期运行可能会引起 TiKV 进程异常退出的问题 TiDB SQL 优化器 修复Feedback切分查询范围出错的问题#12170 修改当SHOW STATS_BUCKETS结果中包含无效 Key 时的行为,将返回错误修改为使用 16 进制显示#12094 修复查询中包含SLEEP函数时(例如select 1 from (select sleep(1)) t;)),由于列裁剪导致查询中的sleep(1)失效的问题#11953 当查询只关心表的行数而不关心表数据时,使用索引扫描降低 IO#12112 当use index()中没有指定索引时不去使用任何索引,和 MySQL 兼容 (如explain select a from t use index();)#12100 严格限制统计信息CMSketch中TopN记录的数量,修复快速analyze因为超过事务大小限制而失败的问题#11914 修复Update语句包含子查询时,转换子查询出现的错误#12483 将 Limit 算子下推到IndexLookUpReader执行逻辑中优化select ... limit ... offset ...的执行性能#12378 SQL 执行引擎 PREPARED语句执行错误时,在日志中打印 SQL 语句#12191 分区表使用UNIX_TIMPESTAMP函数分区时,支持分区裁剪#12169 修复AUTO INCREMENT分配MAX int64和MAX uint64没有报错的问题#12162 SHOW TABLE … REGIONS和SHOW TABLE .. INDEX … REGIONS语法新增WHERE条件子句#12123 修改 SQL 超出内存限制后的行为,从断开链接修改为返回Out Of Memory Quota错误#12127 修复JSON_UNQUOTE函数处理 JSON 文本结果不正确的问题#11955 修复INSERT语句中,第一行中为AUTO_INCREMENT列赋值,LAST INSERT ID不正确的问题(例如insert into t (pk, c) values (1, 2), (NULL, 3))#12002 修复PREPARE语句中,GroupBY解析规则错误的问题#12351 修复点查中权限检查不正确的问题#12340 修复PREPARE语句类型没有记录在监控中的问题#12331 支持点查中表名使用别名(例如select * from t tmp where a = "aa")#12282 修复向 BIT 类型列插入数值时,值没有作为无符号类型处理而导致插入负数报错的问题#12423 修复时间取整不正确的问题(例如2019-09-11 11:17:47.999999666应该被取整到2019-09-11 11:17:48)#12258 调整表达式黑名单系统表的用法(例如<与lt等价)#11975 调整函数不存在的错误消息,添加数据库前缀(例如[expression:1305]FUNCTION test.std_samp does not exist)#12111 Server 慢日志中添加Prev_stmt字段,用于最后一条语句是COMMIT时输出前一条语句#12180 优化慢日志输出内容,删除冗余字段#12144 修改txn-local-latches.enable默认值为false,默认不启用本地事务冲突检测#12095 将慢日志中的Index_ids字段替换为Index_names字段,提升慢日志易用性#12061 添加全局作用域系统变量tidb_txn_mode,并默认开启悲观锁#12049 慢日志中添加Backoff字段,用来记录 2PC Commit 阶段的 Backoff 信息#12335 修复使用游标获取PREPARE+EXECUTE执行结果时,慢日志不正确的问题(例如PREPARE stmt1FROM SELECT * FROM t WHERE a > ?; EXECUTE stmt1 USING @variable)#12392 支持使用tidb_enable_stmt_summary,开启后会对 SQL 语句进行统计,并可以使用系统表performance_schema.events_statements_summary_by_digest查询统计结果#12308 调整了 tikv-client 中部分日志级别(例如由于连接断开使得打印的batchRecvLoop fails日志级别由ERROR改为INFO)#12383 DDL 新增变量tidb_allow_remove_auto_inc,默认禁止删除列AUTO INCREMENT属性#12145 修复 TiDB 特殊语法PRE_SPLIT_REGIONS没有使用注释的方式向下游同步,导致下游数据库报错的问题#12120 在配置文件中添加split-region-max-num参数,使得SPLIT TABLE语法允许的最大 Region 数量可调整,该参数默认值10000#12097 支持将一个 Region 切分成多个 Region,并修复打散 Region 超时的问题#12343 修复当索引包含自增列,并且该自增列被两个索引引用时删除失败的问题#12344 Monitor 增加监控指标connection_transient_failure_count,用于统计tikvclient的 gRPC 连接错误数量#12093 TiKV Raftstore 修复 Raftstore 统计空 Region 中 key 个数不准确问题#5414 添加 RocksDB 双向链表支持,提升逆序扫性能#5368 支持 PD 批量Split和空的Split命令, 使得 Split 可以批量进行,提高 Split 效率#5470 Server 修复查看版本命令的输出格式与 2.X 格式不一致的问题#5501 更新 Titan 至 3.0 分支最新版本#5517 更新 grpcio 至 v0.4.5 版本#5523 修复 gRPC coredump 问题,支持内存共享,以避免此处引起 OOM#5524 修复空闲集群中文件描述符泄漏导致长期运行可能会引起 TiKV 进程异常退出的问题#5567 Storage 支持悲观锁事务心跳检测 API,以使得 TiDB 的悲观锁行为与 MySQL 尽量一致#5507 修复部分情况下点查性能较低的问题#5495#5463 PD 修复相邻小 Region 无法 Merge 的问题#1726 修复 pd-ctl 的 TLS 启用参数失效问题#1738 修复可能导致 PD operator 被意外移除的线程安全问题#1734 Region syncer 支持 TLS#1739 Tools TiDB Binlog Reparo 新增worker-count和txn-batch配置项,用于控制恢复速率#746 Drainer 优化内存使用,提升同步执行效率#737 TiDB Lightning 修复从 checkpoint 点重新导入可能会导致 TiDB Lightning 崩溃的问题#237 修改计算AUTO_INCREMENT的算法,降低溢出的风险#227 TiDB Ansible 更新 TiSpark 版本至 2.2.0#926 更新 TiDB 配置项pessimistic_txn的默认值为true#933 新增更多系统级别监控到node_exporter#938 新增iosnoop和funcslower两个 perf 工具,方便诊断集群状态#946 Ansible 的 Raw 模块更新成 Shell 模块,解决密码过期等场景发生的长时间等待问题#949 更新 TiDB 配置项txn_local_latches的默认值为false 优化 Grafana dashboard 监控项和告警规则#962#963#969 新增配置文件检查功能,在部署和升级之前检查配置文件是否正确#934#972 详情见发布说明: https://pingcap.com/docs-cn/v3.0/releases/3.0.4/

优秀的个人博客,低调大师

Jboot 2.2.2 发布,分布式开发更加简单快速

Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对java代码、html、css、js 等资源文件进行热加载,爽爽的开发。 Jboot v2.2.2 更新内容如下: 新增:新增 AopCache 工具类,方便直接操作 AOP 缓存 新增:Model 新增 findListByIds() 方法,用于更加多个ID查询多个Model 新增:CacheUtil 新增 use() 方法,方便通过 CacheUtil 对不同的缓存进行操作 优化:重构 Cache AOP 拦截器的包结构,使之更加合理 优化:优化 Cache 的相关工具类,删除多余的无用代码 优化:添加 Columns.EMPTY 变量,用于查询时在某些情况无需创建变量 优化:find 系列方法更好的答应 debug sql,同时删除 JbootModel 无需重写的某些方法 maven 依赖: <dependency> <groupId>io.jboot</groupId> <artifactId>jboot</artifactId> <version>2.2.2</version> </dependency> Hello World: @RequestMapping("/") public class HelloworldController extends JbootController { public void index(){ renderText("hello world"); } public static void main(String[] args){ JbootApplication.run(args); } }

优秀的个人博客,低调大师

Jboot 2.2.1 发布,分布式开发更加简单快速

Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对java代码、html、css、js 等资源文件进行热加载,爽爽的开发。 Jboot v2.2.1 更新内容如下: 优化:findCountByColumns 返回的类型由 Long 改为 long,客户端调用的时候不需要再判断是否为null。 优化:JbootDbManager 重命名为 ArpManager 新增:JbootDb 工具类,用于增强 JFinal 的Db 工具类,增加 JbootDb.findByColumns 及其 JbootDb.deleteByColumns 系列方法 maven 依赖: <dependency> <groupId>io.jboot</groupId> <artifactId>jboot</artifactId> <version>2.2.1</version> </dependency> Hello World: @RequestMapping("/") public class HelloworldController extends JbootController { public void index(){ renderText("hello world"); } public static void main(String[] args){ JbootApplication.run(args); } }

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册