dm 工具编译版本要求

GitHub上readme里面 写了要求Go >= 1.11.4,
而最近编译的时候,其中tidb-tools中的parse.go里面用到了replaceAll函数,该函数要求版本1.13.
导致编译报错:


建议同步文档。
鉴于apt源里面没有1.13,只有1.11的go是否可以有个tag版本只需要1.11的go就可以编译。

1 个赞

这个问题我们反馈下,请问您这边是修改了代码吗?您这边可以直接下载 release 的 DM 按照官网方式部署进行使用就可以的。
https://docs.pingcap.com/zh/tidb-data-migration/stable/deploy-a-dm-cluster-using-ansible

我需要编译arm版本的dm,官方好像没有发布arm版的release。

release-1.0 的分支对应的是 v1.0.x,里面需要依赖 mydumper 的 binary,那个要编译成 ARM 版本会比较麻烦。

master 分支现在对应 v2.0,可以比较方便地编译成 ARM 版本(对应的用户文档为 https://docs.pingcap.com/zh/tidb-data-migration/dev)。

另外,v2.0 正式 release 后官方会提供 ARM 版本。

Go 1.11 是否有 strings.Replace 函数呢,可以试试在依赖库中找到 tidb-tools 替代一下。

func ReplaceAll(s, old, new string) string {
	return Replace(s, old, new, -1)
}

什么时候提供?

github.com/pingcap/tidb/util/fastrand

/root/go/pkg/mod/github.com/pingcap/tidb@v1.1.0-beta.0.20200728020902-472acf7b85b3/util/fastrand/random.go:35:6: missing function body
note: module requires Go 1.13# github.com/pingcap/tidb-tools/pkg/utils
/root/go/pkg/mod/github.com/pingcap/tidb-tools@v4.0.5-0.20200805025317-02a16e0521cb+incompatible/pkg/utils/security.go:134:54: http.DefaultTransport.(*http.Transport).Clone undefined (type *http.Transport has no field or method Clone)

github.com/pingcap/tidb/types

/root/go/pkg/mod/github.com/pingcap/tidb@v1.1.0-beta.0.20200728020902-472acf7b85b3/types/time.go:255:33: syntax error: unexpected b1110, expecting semicolon or newline or )
note: module requires Go 1.13make: *** [Makefile:66:dmctl] 错误 2
呃,还有这 几个报错。

本月底发布 2.0 RC 时,可以通过 TiUP 工具来运维 ARM 版的 DM

这个这样处理了,还有其他的问题,尴尬。

今天25号了,发布了么?咋更新TiUP?

发布了,直接执行 tiup list 应该有看到 dm。使用 TiUP 部署 DM v2.0 的文档(https://docs.pingcap.com/zh/tidb-data-migration/v2.0/deploy-a-dm-cluster-using-tiup)

嗯,看到了。but 链接 点过去404了。

上面链接后面自动把 ) 括号带进去了

https://docs.pingcap.com/zh/tidb-data-migration/v2.0/deploy-a-dm-cluster-using-tiup

dm的 grafana可以和cluster的共用么?不然就得部署2个在不同的端口了。

and are you graduated from csu?

暂时不能共用

yes…

me too.
since 2010.6,undergraduate.
How do you do!

:joy: 变成校友贴了,哈哈哈