Alex Chi Z.

Results 309 comments of Alex Chi Z.

> > 与此同时,如果可以拿到所有需要下载文件的链接,就可以集成到 https://github.com/sjtug/mirror-clone 做全量同步。比如目前 SJTUG 的 rustup 镜像就是通过 HTTP HEAD 访问 mirror-intel 所有需要缓存文件 URL 的方法,同步近 30 天的所有工具链。 > > 这个不好实现,因为即使CI已经构建好了某个软件,这个软件是以普通文件的形式存放在CI服务器的`/gnu/store`文件夹里,只有当用户向CI服务器请求这个软件时,CI服务器才会生成`narinfo`和`nar`,然后返回给用户。所以没法预先拿到全部的下载链接。上游愿意开放rsync接口,提供`guix-publish`缓存文件夹,`guix-publish`缓存文件夹里有CI生成出来的`narinfo`和`nar`文件,但是文件保存路径和URL路径是不一致的,不能通过静态HTTP服务直接提供给用户。最近问了开发者,他们在这一块暂时没有改动的意愿。我们可以通过`guix-publish`缓存文件夹里的文件信息预先拉取部分的软件包,但是我觉得没太大必要。目前rsync接口还没开放出来,我最近再催一催。 如果可以拿到两者的对应关系,就可以接入 mirror-clone 做全量同步。现在看起来可以做缓存。

我已经写好了缓存的规则,近几天会上线。SJTUG Guix 镜像后续的进展,可以移步 https://github.com/sjtug/mirror-requests/issues/131 讨论。

为啥不能直接 git clone?

> Github 经常无法访问 我的意思是为什么要用 ego 同步,而不是 git 工具。 镜像站加新的软件栈比较麻烦,能用现成工具最好。

> 用[https://download.opensuse.org也很慢,求添加源,感谢](https://download.opensuse.org%E4%B9%9F%E5%BE%88%E6%85%A2%EF%BC%8C%E6%B1%82%E6%B7%BB%E5%8A%A0%E6%BA%90%EF%BC%8C%E6%84%9F%E8%B0%A2) OpenSUSE 镜像国内到处都有

https://hex.pm/docs/mirrors 看起来 upyun 已经搭建了一个 mirror?

This might also block https://github.com/singularity-data/risinglight/issues/227 where TPC-H uses BIGINT (i64).

... also an open discussion on how to implement the expression framework https://github.com/risinglightdb/risinglight/discussions/381

Yes. But even disk backend has two modes -- pure in-memory mode (for testing, where files are stored in a hash map), and real on-disk mode.

If we can abstract all disk operations to use a trait like ObjectStore, we can prevent unwanted writes to disk in in-memory secondary storage.