]>
Commit | Line | Data |
---|---|---|
d2e6a577 FG |
1 | >= 12.1.2 |
2 | --------- | |
3 | * When running 'df' on a CephFS filesystem comprising exactly one data pool, | |
4 | the result now reflects the file storage space used and available in that | |
5 | data pool (fuse client only). | |
6 | * Added new commands "pg force-recovery" and "pg-force-backfill". Use them | |
7 | to boost recovery or backfill priority of specified pgs, so they're | |
8 | recovered/backfilled before any other. Note that these commands don't | |
9 | interrupt ongoing recovery/backfill, but merely queue specified pgs | |
10 | before others so they're recovered/backfilled as soon as possible. | |
11 | New commands "pg cancel-force-recovery" and "pg cancel-force-backfill" | |
12 | restore default recovery/backfill priority of previously forced pgs. | |
7c673cae | 13 | |
181888fb FG |
14 | |
15 | 12.2.1 | |
16 | ------ | |
17 | ||
18 | * Clusters will need to upgrade to 12.2.1 before upgrading to any | |
19 | Mimic 13.y.z version (either a development release or an eventual | |
20 | stable Mimic release). | |
21 | ||
22 | - *CephFS*: | |
23 | ||
24 | * Limiting MDS cache via a memory limit is now supported using the new | |
25 | mds_cache_memory_limit config option (1GB by default). A cache reservation | |
26 | can also be specified using mds_cache_reservation as a percentage of the | |
27 | limit (5% by default). Limits by inode count are still supported using | |
28 | mds_cache_size. Setting mds_cache_size to 0 (the default) disables the | |
29 | inode limit. | |
3efd9988 FG |
30 | |
31 | * The maximum number of PGs per OSD before the monitor issues a | |
32 | warning has been reduced from 300 to 200 PGs. 200 is still twice | |
33 | the generally recommended target of 100 PGs per OSD. This limit can | |
34 | be adjusted via the ``mon_max_pg_per_osd`` option on the | |
35 | monitors. The older ``mon_pg_warn_max_per_osd`` option has been removed. | |
36 | ||
37 | * Creating pools or adjusting pg_num will now fail if the change would | |
38 | make the number of PGs per OSD exceed the configured | |
39 | ``mon_max_pg_per_osd`` limit. The option can be adjusted if it | |
40 | is really necessary to create a pool with more PGs. | |
b32b8144 FG |
41 | |
42 | 12.2.3 | |
43 | ------ | |
44 | ||
45 | - *RBD*: | |
46 | ||
47 | * The RBD C API's rbd_discard method now enforces a maximum length of | |
48 | 2GB to match the C++ API's Image::discard method. This restriction | |
49 | prevents overflow of the result code. | |
50 | ||
51 | - *CephFS*: | |
52 | ||
53 | * The CephFS client now catches failures to clear dentries during startup | |
54 | and refuses to start as consistency and untrimmable cache issues may | |
55 | develop. The new option client_die_on_failed_dentry_invalidate (default: | |
56 | true) may be turned off to allow the client to proceed (dangerous!). | |
94b18763 FG |
57 | |
58 | 12.2.5 | |
59 | ------ | |
60 | ||
61 | - *CephFS*: | |
62 | ||
63 | * Upgrading an MDS cluster to 12.2.3+ will result in all active MDS | |
64 | exiting due to feature incompatibilities once an upgraded MDS comes online | |
65 | (even as standby). Operators may ignore the error messages and continue | |
66 | upgrading/restarting or follow this upgrade sequence: | |
67 | ||
68 | Reduce the number of ranks to 1 (`ceph fs set <fs_name> max_mds 1`), | |
69 | deactivate all other ranks (`ceph mds deactivate <fs_name>:<n>`), shutdown | |
70 | standbys leaving the one active MDS, upgrade the single active MDS, then | |
71 | upgrade/start standbys. Finally, restore the previous max_mds. | |
72 | ||
73 | See also: https://tracker.ceph.com/issues/23172 | |
74 | ||
75 | * *rados list-inconsistent-obj format changes:* | |
76 | ||
77 | * Various error strings have been improved. For example, the "oi" or "oi_attr" | |
78 | in errors which stands for object info is now "info" (e.g. oi_attr_missing is | |
79 | now info_missing). | |
80 | ||
81 | * The object's "selected_object_info" is now in json format instead of string. | |
82 | ||
83 | * The attribute errors (attr_value_mismatch, attr_name_mismatch) only apply to user | |
84 | attributes. Only user attributes are output and have the internal leading underscore | |
85 | stripped. | |
86 | ||
87 | * If there are hash information errors (hinfo_missing, hinfo_corrupted, | |
88 | hinfo_inconsistency) then "hashinfo" is added with the json format of the | |
89 | information. If the information is corrupt then "hashinfo" is a string | |
90 | containing the value. | |
91 | ||
92 | * If there are snapset errors (snapset_missing, snapset_corrupted, | |
93 | snapset_inconsistency) then "snapset" is added with the json format of the | |
94 | information. If the information is corrupt then "snapset" is a string containing | |
95 | the value. | |
96 | ||
97 | * If there are object information errors (info_missing, info_corrupted, | |
98 | obj_size_info_mismatch, object_info_inconsistency) then "object_info" is added | |
99 | with the json format of the information instead of a string. If the information | |
100 | is corrupt then "object_info" is a string containing the value. | |
101 | ||
102 | * *rados list-inconsistent-snapset format changes:* | |
103 | ||
104 | * Various error strings have been improved. For example, the "ss_attr" in | |
105 | errors which stands for snapset info is now "snapset" (e.g. ss_attr_missing is | |
106 | now snapset_missing). The error snapset_mismatch has been renamed to snapset_error | |
107 | to better reflect what it means. | |
108 | ||
109 | * The head snapset information is output in json format as "snapset." This means that | |
110 | even when there are no head errors, the head object will be output when any shard | |
111 | has an error. This head object is there to show the snapset that was used in | |
112 | determining errors. | |
113 | ||
91327a77 AA |
114 | |
115 | 12.2.9 | |
116 | ------ | |
117 | * 12.2.9 contains the pg hard hard limit patches(https://tracker.ceph.com/issues/23979). | |
118 | A partial upgrade during recovery/backfill, can cause the osds on the previous version, | |
119 | to fail with assert(trim_to <= info.last_complete). The workaround for users is to | |
120 | upgrade and restart all OSDs to a version with the pg hard limit, or only upgrade | |
121 | when all PGs are active+clean. This patch will be reverted in 12.2.10, until | |
122 | a clean upgrade path is added to the pg log hard limit patches. | |
123 | ||
124 | See also: http://tracker.ceph.com/issues/36686 |