docs/zh_cn/release_notes.md
:::tip 提示 所有历史版本请查看 GitHub Releases 页面 :::
JuiceFS 社区版采用语义化版本号标记方式,每个版本号都由三个数字组成 x.y.z,分别是主版本号(x)、次版本号(y)和修订号(z)。
1 时,表示该版本已经适用于生产环境。当主版本号发生变化时,表明这个版本可能增加了不能向后兼容的重大功能、架构变化或数据格式变化。例如,v0.8.3 → v1.0.0 代表生产就绪,v1.0.0 → v2.0.0 代表架构或功能变化。v1.0.0 → v1.1.0。v1.0.3 → v1.0.4。JuiceFS 的客户端只有一个二进制文件,一般情况下升级时只需要用新版本软件替换旧版即可。
:::tip 提示 若您正在使用的版本小于 v1.0,请先升级到 v1.0 版本。 :::
JuiceFS 在 v1.1(具体而言,是 v1.1.0-beta2)版本中新增了目录用量统计和目录配额两个功能,且目录配额依赖于用量统计。这两项功能在旧版本客户端中没有,当它们被开启的情况下使用旧客户端写入会导致统计数值出现较大偏差。在升级到 v1.1 时,若您不打算启用这两项新功能,可以直接使用新版本客户端替换升级,无需额外操作。若您打算使用,则建议您在升级前了解以下内容。
目前这两项功能的默认配置为:
新创建的文件系统,会自动启用
已有的文件系统,默认均不启用
juicefs config 命令单独开启juicefs config META-URL --min-client-version 1.1.0-Ajuicefs status META-URL | grep -w VersionJuiceFS 在 v1.0(具体而言,是 v1.0.0-beta3)版本中有两项兼容性修改。若您原来使用的客户端版本较低,建议您在升级前先了解以下内容。
JuiceFS v1.0 改进了 SQL 元数据引擎对非 UTF-8 字符集的支持。对于已有的文件系统,需要手动调整表结构才能支持非 UTF-8 字符集,建议在升级完所有客户端后再选择访问压力比较低的时候进行操作。
:::note 注意 调整 SQL 表结构时数据库性能可能会下降,影响正在运行的服务。 :::
alter table jfs_edge
modify name varbinary(255) not null;
alter table jfs_symlink
modify target varbinary(4096) not null;
alter table jfs_edge
alter column name type bytea using name::bytea;
alter table jfs_symlink
alter column target type bytea using target::bytea;
由于 SQLite 不支持修改字段,可以通过 dump 和 load 命令进行迁移,详情参考:JuiceFS 元数据备份和恢复。
JuiceFS v1.0 使用了新的会话管理格式,历史版本客户端通过 juicefs status 或者 juicefs destroy 将无法看到 v1.0 客户端产生的会话,新版客户端可以看到所有会话。