►
From YouTube: Ceph Crimson/Seastore Meeting 2022-09-23
Description
Join us weekly for the Ceph Crimson/Seastore meeting: https://ceph.io/en/community/meetups
Ceph website: https://ceph.io
Ceph blog: https://ceph.io/en/news/blog/
Contribute to Ceph: https://ceph.io/en/developers/contribute/
What is Ceph: https://ceph.io/en/discover/
A
All
right,
I
think
we
can
get
started.
Let's
see
my
update
for
this
week
is
that
the
multi-core
branch
basically
works.
It's
completing
iOS,
so
I
should
have
that
pull
request
out
the
next
day
or
two
I'm
mainly
blocked
on
that
bug.
I
guess:
V
start
with
it's
just
crashing
with
c-store
during
makefest,
not
sure
why
debugging
up,
but
that's
on
Main,
not
on
the
multi
multi-core
branch
and
then
I
have
fixes
out
for
these
two.
A
If
Chennai
in
particular
the
the
the
first
one
there
I
think
might
be
the
fix
for
the
bug
you
were
hitting
if
you're
still
seeing
Hong
iOS.
B
This
is
my
recent
work
last
month,
and
this
is
a
sub
Tree
in
omap
subtrain
in
map
tree.
My
target
is
to
decrease
node
loads
and
adjusting
and
the
rendering
memory
copy.
So
that
is
to
say,
we
can
only
adjust
bound
nodes
for
each
layer
in
the
whole
tree
and
do
not
leave
nodes
and
a
risking
a
range
directly
instead,
instead
of
one
by
one
but
there's
some
problem,
and
that
is,
we
cannot
reuse
the
recursive
Logics
because
of
cross
parameter.
B
Just
we
need
level
traversal
and
that
is
to
see,
for
example,
if
we
directly
rent
removal
amount
of
log
of
nodes
and
then
this
this
area,
one
error,
one
nodes,
I,
don't
have
brothers
and
that's
what
R1
knows
won't
have
rather
two.
So
he
cannot.
He
has
no
brother,
so
he
cannot
merge
with
his
brother,
so
we
should
cross
prep
parent.
Maybe
there
is
an
another
subtree
in
his
left,
so
he
should
merge
with
the
left
left
nose
by
this,
this
cross
parent.
B
So
the
past
recursive
method
doesn't
work
and
we
need
level
traviso
or
we
can
or
we
can
just
do
not
adjust
the
shape
of
the
tree.
After
Ranger
move
will
be
like
a
pence,
you
see
him.
This
is
less
time
than
this
line
and
the
middle
oh.
A
B
Yes,
so
so
so
next
I
this
is
my
step
first
and
the
air
and
R
is
about
nose
after
range
removed.
So
the
first,
for
example,
if
we
are
in
this
near
this
layer,
depth
is
equal
to
two.
First,
we
retire
mid
nodes
and
before
that,
we
should
unload
it
and
and
record
the
logic
address
of
next
layer
in
until
the
leaf
node.
B
We
don't
need
nodes
and
retirement
nodes
and
learn
your
risk
keys
in
the
range
from
the
bound
nodes,
for
example,
the
left
to
R
to
the
Rhythm,
erase
the
keys
and
then
adjust
his
child
nodes,
for
example.
Where
to
charge
knows
what
A1
and
maybe
R1
need,
merge,
R1,
so
adjusting
and
then
calculate
the
status
of
this
layer
that
is
R2
and
R2.
So
there
might
meet
many
cases
special
cases
and
we
and
and
because
we
can't
really,
we
can't
reuse
the
pass
logic.
B
So
a
plenty
of
plenty
of
code,
work,
original
level,
trevisor
and
then
cross
pattern.
Merge,
so
I
need
a
limited,
and
then
we
need
to
record
an
object
for
location
in
each
layer
and
you
can
say
an
L
air
and
the
middle
is
a
range
move
range
and
then
RR
for
air.
This
this
air
is
just
candidates
are
and
r
and
the
for
R
is
the
same.
The
air,
air
and
air
and
R
and
RR
might
be
broader
or
not
they
might.
They
might
be
not
in
one
node
and
there's
some
there's
some.
B
There
are
some
special
special
cases
and
there's
a
whole
tree,
and
that
is
there
no
left
bound
or
right
bound
and
we
need
to
implement
the
twice
adjust,
that
is
to
say
after
range
removed,
Air,
1
and
the
R1
might
merge.
But
after
you
merge
it's,
it
might
still
below
mean
in
size.
That
is
to
say,
we
need
to
try
just
to
balance
on
merge
the
RR
yeah.
A
B
More
and
the
old
map
is
special
because
it's
a
variable
is
key.
For
example,
we
re-range
remove
this
this
range,
and
if
air
is
air,
one
is
blue
mean,
so
we
need
balancer
key
for
R1
to
A1,
so
the
parents
of
R1
need
to
after
the
index
index
key,
so
the
parents
might
spill
it
or
flaw.
So
she
you
need
to
spell
it.
B
So
that's
more
complicated
because
after
that
we
might
continue
merge
after
spirits
of
parents,
so
we
should
also
handle
this
case,
so
so
that
means
we
should
we
shouldn't
spill
it,
although
it
will
overflow,
when
index
key
updating,
and
only
after
all,
this
layer
adjusting,
no,
no
sorry
a
child
layer
adjusting
and
can
we
calculate
the
status
of
this
node,
and
it
must
be
my
sleep,
speed
or
not
So,
to
avoid
overflow.
In
this
situation
the
simplest
way
is
to
allocate
a
temporary
two
plus
size
format
node.
This
is
just
a
temporary
note.
B
Yes,
let's
adjust
the
kitchen
structure
or
we
can
in
fact
we
can
realize
in
the
in
the
in
another
way,
but
it's
much
more
conflicted
and
this
this
is
also
a
corner
case
and
the
the
range
is
only
in
one
node.
So
this
is
some
of
some
of
the
cases,
not
not
the
older
cases,
it's
pretty
pretty
complex.
So
the
difficulty
is.
We
cannot
reuse
a
recursive
based
Logics
and
there
are
many
complicated
situation.
B
Operations
need
to
be
considered
and
handled,
especially
in
two
bundle
adjust,
as
you
can
see,
so
I
searched
for
the
what
they
do
in
Blue
store
that
they
use
logs
DB
and
the
Rooks
DB
uses
error
same
trim
and
he
it
realizes
by
insert
range
Tom
Stone
block,
and
that
is
for
oil
Supreme
and
also
searching
Google
Scholar.
But
there's
no
such
solution.
A
I
mean
I
think
you've
correctly
worked
out
the
answer.
You've
you
have
to
actually
do
the
per
layer
of
merges
it's
not
actually
that
different
from
removing
a
key.
It's
just
that
it
can
span
nodes,
so
you'll
be
duplicating
a
lot
of
logic
that
exists.
My
question
is:
what
use
case
are
we
worried
about
performance
of
this
in.
B
This
is
just
for
the
system
or
the
interface
you
need
to
implement
this,
and
so
I
think.
Does
it
necessary
to
Implement
such
complexity
logic
to
for
not
not
such
important
feature
in
not
critical
iopass.
That.
B
I
have
already
realized
the
simple
approach
of
omap
range
removed
last
week
and
I
will
about
to
Upstream
a
little
later.
This
is
a
simple
approach
and
just
release
a
range
and
remove
it
one
by
one
and
and
this
orgasm
I
worked
last
month.
I
have
nearly
finished
the
cause
of
this
perfect
solution,
but
except
handling
the
parent
split
caused
by
a
child's
balancing
case.
We
need
to
implement
a
temporary
nodes
return
that
this
is
also
conflicted
and
there's
a
lot
of
debugging
testing
work
for
this
solution.
B
So
I
think
this
is
not
the
in
The
crucial
pass.
So
I
will
continue
to
do
that,
but
at
a
low
priority
and
I'm
at
an
aim
at
more
performance
release
reproduction.
But
but
if
in
a
fixed
lensity,
there
will
be
no
parents
place
caused
by
child's
balancing
case.
So
this
can
directly
work
so
if,
if
after
introducing
the
max
collection
size,
so
if
three
parts
need
range
of
operations,
but
if,
if
you,
if
we
need,
we
can
I
think
it
can
directly
walk
and
that's
all
that's
that's
all
I'm
thinking.
B
A
C
Awesome
well
I
do
the
when
I,
when
I,
do
the.
A
B
A
C
Imagine
two
times
the
old
map
remove
ranks,
but
not
every
time.
It
happened
so
only
I
test
over
maybe
several
tens,
but
only
the
two
times
it
trigger
the
old
map.
Remote
ranges.
A
A
Was
going
to
say,
yeah
I'll
go
ahead.
This
won't
always
be
true.
It's
just
that.
Rbd
specifically
doesn't
rely
on
this
interface
method,
both
Steph
the
file
system
and
rgw
do,
and
we
will
need
an
efficient
implementation
done,
but
for
now
an
inefficient
one
is
probably
okay,
especially
if
it
allows
us
to
spend
time
on
something
else.
C
I
agree:
I
have
a
discussed
with
see
that
he
always
considering
the
the
three
balance
at
every
time,
but
I
think
it
is
not
a
very
important
at
all
for
us,
because
the
tree,
if
the
tree
is
not
balanced
after
I,
remove
the
range
it
will
be
adjusted
to
the
next
time.
We
we
insert
or
remove
the
clay
from
the
old
map
omap
tree,
so
it
will.
A
A
B
D
Okay,
so
sorry,
I,
think
okay,
I
think
the
PG,
the
PG
lock
trimming
May
benefit
from
this
optimized
range,
remove
feature.
D
A
D
But
I'm
still
curious
about
whether
we
will
put
picture
logs
in
the
in
the
in
in
the
omap
eventually
or
were
someday.
We
will,
we
will
gonna
move
it
out.
I.
A
I'm
kind
of
ambivalent
about
this
I,
actually
don't
think
this
happens
on
the
common
path.
I
think
we
removed
the
keys
individually.
A
B
A
A
Okay,
cool:
do
you
have
anything
else?
You
know.
A
Right,
aravind
how's
it
going.
E
Yeah
hi,
so
I've
been
looking
at.
You
know:
benchmarking
some
of
the
the
on
the
DNS
drives
and
I
hit
a
couple
of
issues.
I
will
raise
the
bugs
for
them
and
also
I
I.
Had
a
few
questions
like
yeah,
you
know:
do
you
have
any
data
like
in
general
from
the
Telemetry
data,
how
much
storage
like
in
deployments
in
actual
deployments
like
how
much
is
the
storage
for
like?
Is
it
like,
50,
full
on
average
or
like
80
percent
full
or
90
percent
full?
E
Do
we?
Can
we
get
any
kind
of
information
like
that
like?
What
is
the
storage
usage
in
in
deployments.
A
No
not
really,
and
to
be
honest,
as
Steph
clusters
become
very
full.
They
behave
badly
for
a
lot
of
reasons.
One
of
them
is
that
you
have
a
pseudorandom
distribution
of
data
usage
across
osds,
so
letting
all
of
the
osds
in
a
cluster
get
above
80
is
a
problem
to
begin
with,
even
before
we
start
talking
about
c-store.
A
The
second
reason
is
that
on
zns
drives
in
particular,
there's
likely
to
be
more
usable
space
on
a
zns
drive
than
an
equally
priced
conventional
one
yeah.
So
we're
allowed
to
use
more
of
the
space
for
our
for
our
own
purposes.
E
So
yeah,
the
one
point
I
was
asking
was
that
unconventional
devices
once
it
you
know,
goes
beyond
certain
85
90
Beyond,
its
over
processing,
whatever
has
been
provided
and
once
the
device
inside
the
device,
the
garbage
collection
kicks
in
the
device
garbage
collection
SSD
within
SSD,
then
the
performance
of
that
drive
would
you
know,
drop,
but
that
would
not
happen
with
the
zns
drives
like.
That
is
one
of
the
you
know.
You
know
places
where
zns
can
shine
kind
of.
E
You
know
whether
it
is
the
you
know,
bandwidth
or
the
latencies
it
would.
It
would
hold
still
compared
to
conventional
SSD
and-
and
we
have
seen
that
happen
in
other
workloads
yeah.
So
that's
why
I
was
just
curious
to
check
whether
like
incept,
how
much
is
the
pull
the
cluster.
A
F
A
Anyway,
so
I
would
say
that
at
this
stage
of
c-store,
we're
certainly
interested
in
being
able
to
use
as
much
of
the
drive
as
we
practically
can,
but
we
don't
expect
to
be
able
to
use
100
of
it.
There
will
be
a
practical
limit
and
part
of
our
job
right
now
is
to
work
out.
What
that
limit
can
can
be.
E
Yeah,
but
it
is,
it
is
a
given
that,
even
though
the
drugs
you
know
gets
at
whatever
level
that
we
want
to
like
85
percent,
but
then
it
is,
it
is
agreed
that
the
iOS
should
still
continue
to
happen
right
after
it
is
85,
full
and
GC
is
running,
and
it
is
reclaiming
some
space
and
then
once
it
is
reclaiming
space,
It
should
be
able
to
do
further
rides.
Yeah.
A
A
A
A
E
Right:
okay,
okay,
thanks!
That's
all
I
had
I'm
looking
at
those
issues
and
and
a
couple
more
patches
on
refactoring
the
core
with
the
CNS
code.
So
that's
all
the
updates
I
had
thank
you.
A
See
engine
all
right
if
I
didn't
do
that?
Well,
can
you
hear
me.
A
A
It's
loading
just
a
moment
now,
I
can
see
you
go
ahead.
Okay,.
F
Recently,
I'm
focused
on
the
criminal
system,
one
mile
performance
regulation
with
Azure
broad
data
for
fail,
yeah
a
way
to
benchmarking
with
different
profile
scenaries,
as
we
can
see
with
different
broker
size
or
profiling.
Creating
the
fourth
pickaxe
remember
the
performance
of
quickly
the
random
right
I'll
perform
Dr
leader
tool,
so
we
suspect
it
is
for
the
entire
Center
you
might
not.
When
reading
booking
to
feedback
broke,
so
my
introduced
the
Max
location
size,
then
to
limit
the
size.
Sorry,
we
introduced
the
Microsoft
inside
of
extended
in.
F
Obviously
it
is
very
simple
specifically
when
we
start
a
new
instance
if
it's
in
larger
than
the
threshold
with
relatives
it
to
some
sections,
so
I'm,
very
reputation
to
the
of
your
train
yeah.
After
that,
the
tempo
optimization,
we
can
say
it's
not
working
that
profile
series.
F
The
performance
go
normally
yeah,
but
the
simple
information
implementation
will
either
performance
regulation
from
Big
sequential
right,
since
the
insertion
could
have
been
potency,
sound
parallel.
Maybe
we
need
other
new
functions
that
when
it
starts
or
shall
we
change
the
record
to
only
get
the
extent,
we
need
a
line,
the
whole
extent
or
how
did
the
first
photo?
Don't
have
the
southern
eyes
right
now.
So
what
do
you
think?
That's
for
your
life
yeah.
A
A
Range
insert
would
be
fine,
there's
no
reason
not
to
do
that.
I
almost
implemented
it
myself
a
while
ago.
So
that
would
be
fine.
A
A
A
C
C
So
I
I
figure
out
that
the
the
blocker
is
always
blocked
there.
So
you
stand
at
the
pr
1959
fixed
that
right.
A
A
How
it
was
my
mistake
when
we
re-queue
Ops,
we
reuse
the
same
pipeline,
handle
and
events
and
usually
that's
fine,
but
with
certain
orderings,
the
the
old
copy
of
the
op
re-grabs
a
mutex
and
then
never
drops
it.
So
it
leaks
the
mutex.
C
Oh
okay,
so
but
things
are
still
meeting
the
other
system.
I
founded
the
it
is
unblocked,
but
still
come
to
return
to
the
client
side,
so
SQL
needed
to
test.
If
still
had
the
other
problems.
So
that's
all
I
will
try
up
here.
Okay,.
A
Thanks
I'd
appreciate
it
that
that
way,
if
it
works
all
no,
it
actually
works.
C
D
Okay,
this
week,
I
finished
debugging
the
code
for
pin
set
based
again
mapping
optimization.
According
to
my
results
of
my
of
my
proof,
test.
This
pin
set
based
again
mapping
optimization,
can
offer
about
another
10
throughput
Improvement
s,
a
submit
a
draft
right
now
I'm
trying
to
beautify
the
code
because
it
is
a
little
bit
ugly.
I
was
too
eager
to
see
how
other
results
would
be
so
and
now
it's
just
I'm
still
adjusting
the
code.
That's
all
for
me.
A
And
this
is
based
on
the
other
one.
Okay
sounds
good.