We've decided to move the Tuesday rgw standup forward 3h45m to better
accommodate folks in Asia. This Tuesday standup is likely to include
more on Rook integration projects. You can find the updated time on the
community calendar at https://ceph.com/contribute/#community-calendar.
Glad to hear that you're on the market for Jewelry.
This is Peter from FANXI. We specialized in jewelry package and displays for 11 years,
with the customers of Tiffany,Bvlgari,VanCleef,Boucheron, and hope to find a way to cooperate with you!
Catalogue will be sent if needed!
Since luminous, we have had the follow release cadence and policy:
- release every 9 months
- maintain backports for the last two releases
- enable upgrades to move either 1 or 2 releases heads
(e.g., luminous -> mimic or nautilus; mimic -> nautilus or octopus; ...)
This has mostly worked out well, except that the mimic release received
less attention that we wanted due to the fact that multiple downstream
Ceph products (from Red Has and SUSE) decided to based their next release
on nautilus. Even though upstream every release is an "LTS" release, as a
practical matter mimic got less attention than luminous or nautilus.
We've had several requests/proposals to shift to a 12 month cadence. This
has several advantages:
- Stable/conservative clusters only have to be upgraded every 2 years
(instead of every 18 months)
- Yearly releases are more likely to intersect with downstream
distribution release (e.g., Debian). In the past there have been
problems where the Ceph releases included in consecutive releases of a
distro weren't easily upgradeable.
- Vendors that make downstream Ceph distributions/products tend to
release yearly. Aligning with those vendors means they are more likely
to productize *every* Ceph release. This will help make every Ceph
release an "LTS" release (not just in name but also in terms of
So far the balance of opinion seems to favor a shift to a 12 month
cycle, especially among developers, so it seems pretty likely we'll
make that shift. (If you do have strong concerns about such a move, now
is the time to raise them.)
That brings us to an important decision: what time of year should we
release? Once we pick the timing, we'll be releasing at that time *every
year* for each release (barring another schedule shift, which we want to
avoid), so let's choose carefully!
A few options:
- November: If we release Octopus 9 months from the Nautilus release
(planned for Feb, released in Mar) then we'd target this November. We
could shift to a 12 months candence after that.
- February: That's 12 months from the Nautilus target.
- March: That's 12 months from when Nautilus was *actually* released.
November is nice in the sense that we'd wrap things up before the
holidays. It's less good in that users may not be inclined to install the
new release when many developers will be less available in December.
February kind of sucked in that the scramble to get the last few things
done happened during the holidays. OTOH, we should be doing what we can
to avoid such scrambles, so that might not be something we should factor
in. March may be a bit more balanced, with a solid 3 months before when
people are productive, and 3 months after before they disappear on holiday
to address any post-release issues.
People tend to be somewhat less available over the summer months due to
holidays etc, so an early or late summer release might also be less than
Thoughts? If we can narrow it down to a few options maybe we could do a
poll to gauge user preferences.
As Andrew Schoen and I move on to other projects, we've asked Jan
Fajerski to lead the ceph-volume project so that it gets the attention
it needs for all the new development that is going on.
Jan has already been doing lots of work and knows the tool very well,
and we are sure it will help backports, tests, and new code reviewed
Andrew and I will still be around helping the transition and fully
available to advise on ceph-volume's direction when needed.
hi Patrick and list,
i am trying replace Mutex with ceph::mutex in Ceph. the goal is to
deprecate and then remove Mutex and Cond from our project. as we have
already ceph::mutex and ceph::condition_variable. it's confusing and,
in the long run, i think, it will hurt us as a technical debt.
most of the refactory work is quite straightforward, and we can always
replace Mutex::is_locked_by_me() with ceph_mutex_is_locked_by_me().
this macro will be expanded to `true` in release build. as we think it
will be used only by `ceph_assert()` and `assert()`.
but i realized that we are also using Mutex::is_locked_by_me() in
functional code which won't be optimised out. for instance, in
MDSRank::MDSRank() we check "mds_lock.is_locked_by_me()", if it's
true, we just `handle_write_error(r)` without acquiring the lock,
otherwise, we will call this function within `mds_lock`. the same
applies to `MDSDaemon::handle_conf_change()`. so i am wondering if
it's okay to change `mds_lock` to a recursive lock, so we don't need
to query this information from
what do you think?