1 Star 0 Fork 95

胶布小子 / Bifrost

forked from jc3wish / Bifrost 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
changelog.txt 21.21 KB
一键复制 编辑 原始数据 按行查看 历史
jc3wish 提交于 2022-04-16 19:15 . v1.8.3
v1.8.3-release 2022-04-16
1. FIX CK插件同步配置选择了指定目标表的时候指定字段映射关系不显示的BUG(issue https://github.com/brokercap/Bifrost/issues/180)
v1.8.2-release 2022-03-26
1. 修复ck插件集群模式同步不了数据的bug
2. Binlog解析测试新增所有字段类型的null值测试
3. 生成测试数据新增所有字段类型的null值字段
v1.8.1-release 2022-02-27
===========================
1. ClickHouse DDL 支持完善,包含:增加字段,删除字段,修改字段类型,修改字段名称,修改表名称等
2. 支持 ClickHouse ReplicatedReplacingMergeTree 分布式集群模式写入(由于涉及到final 效率问题,推荐ck版本为 v20.5.2.7-stable以上(包含))
3. 新增 ElasticSearch 插件支持
4. 修复数据包超过16MB时无法完全解析的BUG
5. 优化某个表没有数据写入,其他表有数据写入的情况下,造成没有数据更变的表,并不会5秒进行超时同步的BUG
6. 优化Binlog连接断开重连的功能
v1.8.0-beta.01 2021-03-14
===========================
1. mysql caching_sha2_password supported
v1.7.4-release 2021-03-14
===========================
1. fix plugin redis list sync empty bug
2. fix pprof.go,update DBController to PprofController
3. mysql field data check update
4. redis-client lib version update
5. fix eventID calc error, lose data bug
v1.7.3-release 2021-02-28
===========================
1. fix gtid update panic bug
2. connection use utf8mb4
3. plugin mysql cancel bool type
4. fix plugin field nullable contrast YES
5. fix plugin clickhouse conn error
v1.7.2-release 2021-02-21
===========================
1. mariadb gtid supported
2. fix plugin mysql nullable ,bug has default sync error bug
3. testing binlog parser and select data is all right for mysql,mariadb,percona
4. golang 1.16 ,Darwin arm64 supported
v1.7.1-release 2021-02-09
===========================
1. fix binlog parser ddl(rename,drop) error
2. fix binlog parser error by "/*notes*/" filter
3. plugin ck ddl update
4. plugin mysql ddl update ,supported tidb rename multi-table
5. mysql multi-gtid support
6. fix percona 8.0 char parser error
7. recovery binlog position calc update
8. beore and after ddl, callback a dummy begin and commit event
9. fix windows path error
10. db list show eventID
11. doc update
12. fix other bugs
v1.7.0-rc.01 2021-01-24
===========================
1. gtid supported
2. plugin ck ddl supported(add,change column)
3. plugin ck decimal64 tansfer decimal64, decimal128 and decimal256 tansfer to String
4. plugin mysql filter data auto_increment be first
5. fix other bugs
v1.6.6-release 2021-01-17
===========================
1. fix rename table binlog parser error bug
2. fix http basic auth bug
v1.6.5-release 2021-01-10
===========================
1. fixed mysql desc SchemaName error bug
2. fixed mysql ddl tansfer error bug
3. fixed history task may recovry bug
4. fixed history flow href error
5. mysql plugin error update
6. fixed may time out contine bug
7. other bug fixed
v1.6.4-release 2021-01-03
===========================
1. 修复一个全量任务设置多线程同步造成的致命bug
2. fixed TRANSACTION_CONTEXT_EVENT,VIEW_CHANGE_EVENT,XA_PREPARE_LOG_EVENT filter error
3. add mysql version show
4. add http api doc
5. web view update and other bugs fixed
v1.6.3-release 2020-12-27
===========================
1. 修复plugin mysql 主键非自增的时候丢数据的bug
2. 修复plugin ddl 同步造成的阻塞的bug
3. 修复plugin 同步出错不报错而造成丢数据的bug
4. 修复dateime(6)类型默认值为0000-00-00 00:00:00.000000解析出错的bug
5. 流量统计优化减少对map的操作,界面流量显示优化
6. 用户登入验证Host支持多个Host配置,用逗号隔开
7. plugin clickhouse 优化对源是float类型的数据转换
8. 其他已知的部分bug修复及界面优化
v1.6.2-release 2020-12-20
===========================
1. 登入用户新增 Host 验证功能
2. 新增登入日志及自动禁IP功能
v1.6.1-release 2020-12-16
===========================
1. 新增对mysql time(1-6),datetime(1-6),timestamp(1-6) 的支持( binlog 解析由 @zhwei820 提交合并 )
2. 修复一个可以可能 造成丢数据的bug
3. mysql 插件支持不同步数据的功能,只支持 SQL DDL
4. 修复 binlog commit事件被过滤的bug
v1.6.0-release 2020-11-29
===========================
1. http 框架代码结构变更,及可提供更为方便第三方自行开发管理界面系统
2. 插件开发 接口变更, 让开发者更方便介入插件开发
3. 采用 commit 事件作为位点管理
4. mysql plugin 支持自动表识别及 DDL 同步功能
5. clickhouse plugin 支持自动大小写转换等功能
6. plugin mongodb 支持自动识别源表主键
7. plugin redis,memcache 支持批量配置
8. 在线修改目标库地址,在线生效,不用再重启进程
9. 同步采用错过位点的方式错过数据,mysql,clickhouse,kafka等批量同步的插件也支持
10. 目标库支持配置保持最小连接数,可用于连接lvs,ha等负载造成的集群长连接,分担压力
11. 其他已知 bug 修复及界面等优化
v1.6.0-beta.04 2020-11-22
===========================
plugin mysql:
1. 新增自动匹配表结构配置支持DDL 同步功能
2. 在没有指定字段映射的字段,则不会同步数据,目标表需要自行设置默认值
plugin clickhouse:
1. 自动建表的时候,新增将表名,字段转成大写或者小写的配置
plugin kafka:
1. 修复同步到kafka在未达到batchsize不同步的bug
plugin mongodb:
1. plugin mongodb 支持自动识别源表主键
Other:
1. 对sql语句中指定schema.table 进行执行,Binlog 过滤库表以sql 中的库表为准
2. 修复全量配置between查询的时候,及全量多个表中,其中有一个表没有主键,报找不到ID等字段 的bug
3. 修复流量显示选择统计时间无效的bug
4. plugin redis,memcache 支持批量配置
v1.6.0-beta.02 2020-11-12
===========================
1. 修复在提交mysql作为目标库的时候,部分mysql版本报错的bug
2. mysql 插件错过位点逻辑变更 为更小位点则直接错过
3. 表同步列表新增Skip 错误位点功能
4. 自动去除输入框前后空格
5. ck 提交错误和数据转换错误分开逻辑判断,减 少重连的概率
6. 修复修改监听端口无效的bug
7. 修复点击报警删除按钮提示json解析错误bug
8. 表同步界面新增显示插件配置参数
9. 修复非row事件的时候,标签替换失败的bug
v1.6.0-beta.01 2020-10-31
===========================
1. http 框架封装修改,方便开发人员更容易介入开发
2. 同步插件接口变更,并且采用commit事件位点进行保存,解决在同步大事务数据的时候,不用再自动寻找可解析的位点
3. clickhouse插件,bifrost_data_version为0的bug修复
4. 在线修改目标库地址,在线生效,不用再重启进程
5. 目标库支持配置保持最小连接数,可用于连接lvs,ha等负载造成的集群长连接,分担压力
6. 其他部分已知bug修复
7. 部分界面显示优化
v1.5.2-release 2020-10-16
===========================
1. 修复enum可能解析错误的bug
2. 修复其他可能造成解析错误的bug
v1.5.1-release 2020-10-15
===========================
1. 修复1.5.0版本在解析过滤了的表的时候,binlog解析报错的bug
v1.5.0-release 2020-10-14
===========================
1. clickhouse plugin 支持自动创建CK表结构同步
2. 模糊匹配表支持指定过滤部分表 不进行模糊匹配
3. 支持指定 arm 架构编译方式
4. 修复修改数据源连接地址后无效的bug
5. 验证邮箱是否合法正则变更
6. enum 类型 值 为 null 的时候解析 越界的bug修复
7. row event 采用最近一次map event 的tableId进行计算,放弃通过 row event 计算出来的tableId 进行反查map event
8. 修复全量多线程同步并发造成的同步中断的bug
v1.5.0-beta.01 2020-09-26
===========================
1. clickhouse plugin 支持自动创建CK表结构同步
2. 模糊匹配表支持指定过滤部分表 不进行模糊匹配
3. 支持指定 arm 架构编译方式
v1.4.5-release 2020-09-26
===========================
1. 修复 decimal 类型部分数据解析错误的bug
2. 修复报警配置删除不了的bug
3. 修复 windows 下创建 data 路径出错的bug
4. 修复 全量任务 部分情况表有数据并不查询不出数据的bug
5. 修复 全量任务 AllTables 的时候,空指针错误bug
6. 通道操作加上锁管理,解决存在因cpu缓存不致造成的bug
v1.4.4-release 2020-09-23
===========================
1. binlog同一个事务 map 事件和row事件被分割在不同binlog文件中出现造成空指针解析错误的bug
2. 代码优化,统一使用一个锁,减少逻辑复杂度
3. 代码优化,解析状态码变更
4. bash 语法 ubuntu下兼容
5. TableCount 插件界面使用不了的bug修复
v1.4.3-release 2020-09-12
===========================
1.修复因为因为没加锁,数据源位点获取位点可能不一致的bug
2.plugin clickhouse {$BifrostDataVersion} 标签采用计数器保证同一批次不同数据值不一样
3.当只有非模糊匹配的表同步配置的时候,同步配置丢失的bug修复
4.同步配置没有同步任何数据,位点为0的时候,数据源位点恢复失败bug修复
5.新增对binlog_row_image参数的提示判断
v1.4.2-release 2020-09-05
===========================
1. 新复mysql binlog_checksum=none解析错误bug
2. 修复全量任务查询数据显示数据错误bug
3. plugin clickhouse 主键支持 标签使用
4. 修复部分stmt,rows close 先后逻辑问题
5. plugin kafka 新增 Timeout,RequiredAcks 配置参数
6. 修复全量任务非between优化查询,总数对不上的bug
v1.4.1-release 2020-08-31
===========================
1. 修复获取连接id,stmt未关闭的bug
2. 修复 binlog_field_test_* 会匹配 出 binlog_field_test,all_binlog_field_test 的bug,自动转成 ^binlog_field_test_(.*) 不会匹配 binlog_field_test 出来
3. 全量任务执行部分表之后不再执行的bug修复
4. 全量任务列表显示正在执行的表的条数及已拉取的条数
5. 位点恢复的过程中,第一个同步就是同步异常,恢复位点错误的bug
6. 新增表同步的暂停和启动功能
7. http 插件 推送方式变更为json raw 格式
8. 配置界面新增表搜索功能
9. linux 环境编译在没有go环境的情况下自动yum安装golang
10. 首页版本判断逻辑更新
11. 部门 api 接口变更
v1.4.0-release 2020-08-24
===========================
1.支持模糊匹配横拆表的同步配置,比如 binlog_field_test_* 的方式匹配 binlog_field_test_1,binlog_field_test_2
2.新增版本更新提示及最新动态显示
3.新增plugin_commit_timeout,plugin_sync_retry_time 参数配置(对同步报警配置可能存在影响)
4.编译目录新增bin文件侠
5.配置文件路径新增以etc目录和Bifrost文件夹根目录 为相对路径功能
6.没有配置同步的表,将不再做数据恢复
v1.3.2-release 2020-08-07
===========================
1.http插件 同步失败也不重试的bug修复
2.ck插件设置的主键匹配错误的bug
3.修复mysql,ck插件由于指针可能存在数据错乱的bug
v1.3.1-release 2020-07-26
===========================
1.导入恢复配置,新增用户和报警配置恢复
2.ck 追加模式同步,遍历修改为从最先数据开始写入
3.随机生写数据写到mysql更新(测试模块)
v1.3.0-release 2020-07-17
===========================
1.mysql json 类型的支持
2.新增支持 {$json["key1"][0]} 的标签
v1.2.4-release 2020-07-17
===========================
1.全量获取sql语句函数锁变更
2.修复NUMERIC_PRECISION值 获取错误的bug
2.修复binlog 解析在mysql8版中因获取的值返回类似从uint64变成uint32造成解析不了的bug
v1.2.3-release 2020-07-07
===========================
1.修复mysql8.x 在information_schema表返回的类似变更 造成的bug
v1.2.2-release 2020-06-10
===========================
1.修复mysql,ck 满批次丢失一条数据的bug
v1.2.1-release 2020-05-24
===========================
1.在非Bifrost 当前目录启动 tls 配置无效bug修复
2.全量任务获取表结构信息出错的bug修复
v1.2.1-rc.02 2020-05-18
===========================
1.全量任务多个同步线程对插件实例化数据进行区分优化
2.json类型字段在map event事件不再报错,但还不支持同步有json字段的表
3.全量任务判断是否同步完毕等优化
4.新增界面操作引导功能
5.修复文件队列读取出来set类型数据转换失败的问题
6.修复位点文件可能 修复出错的问题
7.clickhouse 客户端驱动包版本更新
8.提供强制gc的接口
9. 修复全量拉取数据mysql连接未关闭bug
10. 修复同一个表全量任务被覆盖的bug
11. 全量任务部分内存变量在结束的时候自动清空
12. plugin mysql 多个同步线程共用stmt造成的致命bug修复
13. plugin mysql 当目标表是自增主键并且没有填源表字段名的时候,过滤当前字段,不进行处理
14. mysql,clickhouse插件同步 修复源为bool值 目标表为非bool值 数据转换失败的bug
15. 调用bifrost server 接口,显示创建表sql
v1.2.1-rc.01 2020-05-13
===========================
1. 全量支持配置拉数据连接数及同步线程数,及 查询优化
2. 新增配置启用文件队列的功能
3. 修复文件队列ack出错bug
4. 修复clickhouse插件提交不了的bug
v1.2.0-rc.01 2020-05-10
===========================
1. mysql插件新增 普通模式,日志模式-修改, 日志模式-追加 ,三种模式
2. clickhouse 插件新增 将delete转成update的同步模式
3. clickhouse 新增{$BifrostDataVersion}标签,删除的时候会用到这个标签的字段,保证数据安全
4. 新增文件队列功能,在某个同步出现阻塞的时候,文件队列启动,防止出现阻塞其他同步的可能性
5. 全量任务 分页查询优化,自增主键 查询优化成 BETWEEN x AND y
6. 添加数据源的时候,权限验证,判断是否有足够权限解析binlog
7. MySQL 插件 没有绑定 源表字段及标签的字段,默认为 Null 值
8. ClickHouse 插件,没有绑定源表字段及标签的字段,转成相对应类型默认值
9. binlog解析新增报错内容,及不需要同步表将不再进行多余的表结构查询
v1.1.1-release 2020-04-18
===========================
1. clickhouse插件delete合并一条sql执行
2. 全量任务查询sql查询分页语句通过子查询性能优化
3. 启动的时候获取正确位点新增部分日志
4. 修复mysql插件在数据库有存在特殊符号的时候报语句错误的bug
5. 修复mysql写入字段名是保留字段报错的bug
6. char存储字节大于255解析错误的bug
7. Mysql插件新增NullTransferDefault配置,可强制将NULL转成对应的默认值
8. 新复因mysql连接异常造成的崩溃问题
9. 修复多个null值的情况下,报Incorrect arguments to mysqld_stmt_execute 错误
v1.1.0-release 2019-12-08
===========================
1. redis 配置存储去掉了一个重复的 bifrost 字符串
2. toserver_queue_size 默认修改为 5000
v1.1.0-rc.01 2019-12-02
===========================
1. clickhouse 插件包更新
2. 配置保存失败,造成配置丢失的bug修复
3. 新增每5分钟定时保存一次配置
4. 插件新增指定默认参数的方法 setPluginParamDefault
5. 流量显示错误的bug 修复
6. pprof 需要登入后才能访问
v1.1.0-beta.21 2019-11-03
===========================
1. ClickHouse插件 int 类型之间类型转换, 内存溢出后强制转成0
2. 新增TableCount插件,用于统计每个表的insert,update,delete,及ddl 等情况,可以折线图展示出来
3. 新增 *.* 方式进行匹配数据表过滤,界面 AllDatabases 代表所有库,AllTables 代表所有表.
4. redis插件,假如配置了多少个ip则采用cluster方式连接,多个ip端口用 逗号 隔开
5. 假如不允许批量添加的插件,点击了 批量添加按钮或者选择的是 AllTables 则会进行提示不支持批量配置
v1.1.0-beta.20 2019-10-27
===========================
1. Bristol mysql 包更新,返回值直接转成换指定类型,而不是[]byte类型返回
2. binlog 解析完之后,新增Pri(主键)字段名
3. clickhouse 插件,新增decimal类型(但会有精度丢失),不建议使用
4. clickhouse 插件 对 Nullable 类型数据转换失败bug修复
5. 表同步列表新增按状态搜索
6. 编译脚本更新
7. 文档更新
8. mysql 连接转成utf8编码
9. 新增 redis 存储方式的支持
v1.1.0-beta.19 2019-10-19
===========================
1. 位点延时计算位点显示错误bug修复
2. 新增配置导出和导入功能(数据源,目标库,数据同步配置,报警配置,用户等)
3. 新增用户管理模块,ini 配置文件中用户名和密码用于在第一次启动的时候的用户初始化操作
4. 全量数据配置新增 自定义 where 查询条件功能
5. 刷全量数据没有流量显示bug修复
6. 其他已经bug修复
v1.1.0-beta.18 2019-10-16
===========================
1. 新增查看最新位点对比,显示延时时间
2. mysql插件新增标签支持及界面优化
3. 其他已知bug修复
v1.1.0-beta.17 2019-10-10
===========================
1. 流量统计按实际行数统计,query_event 事件不在统计范围之内
2. clickhouse插件,在string转Int32,Float等类型的情况 ,先去除前后的空格再进行转换
3. 全量任务新增按状态搜索功能
4. 支持make install prefix=./targe方式编译
5. 编译脚本及docker.sh 打包脚本更新
6. 其他已知bug修复
v1.1.0-beta.16 2019-09-30
===========================
1. 解析库模块修改,支持细到表过滤
2. 解析库timestamp转换 要求mysql和当前机器同时区
3. 解析库测试模块及性能模块修改
4. binlog解析异常,将不重试,而是直接退出当前解析
5. 启动的时候输出http或者https访问的地址
6. 数据从表同步到目标库的时候,如果连续5秒没有数据,将自动退出守护模块,释放内存,待下一次有数据的时候再次唤醒
7. 表同步列表新增QueueMsgCount 堆积待同步的消息数
8. 数据源监控告警优化
9. 修改位点的时候,新增是否强制修改所有表ToServer的位点
10. 修复重启之后,报警配置不自动恢复的bug
11. 重启的时候,数据源启动修改成 异步的
12. 获取正常位点,以QUERY_EVENT事件为准
13. 新增{$Timestamp},{$BinlogTimestamp},{$EventType},{$BinlogFileNum},{$BinlogPosition}标签
15. 编译脚本更新
16. 修复 Miss按钮 错过出错数据无效的bug
17. 启动脚本不兼容Ubuntu bug修复 (@北京-兴隆)
18. 流量展示替换成 echartJs
19. 界面等功能优化
20. 已知其他bug修复
21. clickhouse插件,新增 全部转成 Insert 方式同步
22. 自动生成mysql转ck sql ,decimal类型转换成String
23. ck插件自动填充字段功能优化
24. 其他插件close等功能bug修复
v1.1.0-beta.15 2019-09-24
===========================
1. table列表如果是视图,将提示用户,让用户感知
2. 数据表配置同步详情页,默认选择第一个非MySQL自带库
3. channel防止重复启动
4. 新增修改数据源位点功能,只有close状态能修改
6. 数据源binlog_format!=row格式的情况下,进行提示用户
7. 添加数据源成功后,提示用户是否需要跳转到设置表同步界面
8. Detail按钮变更为 Setting
9. 没有配置数据表同步,不允许用户开启数据同步
10.start,close,stop 加入锁机制,防止重复提交
11.默认 default 通道,添加数据源的时候,自动启动
v1.1.0-beta.14 2019-09-19
===========================
1. redis 插件 ,redis 客户端包变更为 go-redis,支持redis 3.x版本
2. 重启位点错误bug修复 (@飞鸟 @le lucermaire 发现问题及帮测试开发版本)
3. 其他已知bug修复
4. 解析binlog 先过滤库再解析相关row事件
5. 每次新增一个库同步,同时更新到Britol解析库里
6. 同步到clickhouse,其他类型同步到int,float类型的时候,数据转换失败,不再报错,强转换成为0 , 0.00进行同步
7. 修复库名里包含特殊符号 - 的情况下,表同步列表 显示错误的bug,现将 _- 作为分割符,库名和表名不允许 出现 _- 2个连续的字符
8. 修复clickhouse 界面生成sql 时,可能会出现UFloat 的bug
9. 修复其他已知bug
v1.1.0-beta.13 2019-08-02
===========================
1. ck插件类型转换优化,支持不同int之间转换
2. 新增插件开开发,界面调试sdk
v1.1.0-beta.12 2019-07-26
===========================
1. 随机生成数据完成,方便插件开发及测试,包括提供插件性能测试方法及数据校验
2. ck,mysql,mongodb,http,rpc,redis,rabbitmq 等插件的单元测试完善 及 bug的修复。数据校验通过测试
3. mysql插件,源表为 null 值的情况下,目标表存在默认值的情况下,以默认值进行填充
4. http 插件,传值的key:data 变更 为 Data
5. 修复rabbitmq Expir 参数设置之后报错的bug
6. http rabbitmq mongodb等文档的更新
7. 经测试部分组件或者语言不支持 大于 int64 的值(mongodb,php 已测试不支持),请使用的时候注意
8. 修复 ck 插件 delete再insert 之后可能存在的bug, 进行更新更简单的过滤做法 已解决,并经过数据校验测试
9. mysql 插件修复 stmt 没有关闭的隐性bug
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/jiaobuxiaozi/Bifrost.git
git@gitee.com:jiaobuxiaozi/Bifrost.git
jiaobuxiaozi
Bifrost
Bifrost
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891