►
From YouTube: Ceph Developer Monthly 2021-02-03
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
Started
the
first
topic
is
sef,
mirroring
metrics,
possibly
sharing
across
services,
ffs
and
rgw.
B
Not
ideal
first
time
zone,
but
anyway
he
he
thought
much
of
it
outside
he's,
not
just
reading
for
the
first
time,
but
the
the
high
level
goal
here
was
that
in
a
kubernetes
environment
or,
and
also
just
in
general,
there's
no
real
good
way
to
have
consistent,
alerting
from
an
end
user
or
even
from
a
storage
admin.
B
That's
you
know
your
rgw
multi-site
or
your
carpeting,
mirroring
or
now
your
separate
smearing
is,
you
know
not
living
up
to
whatever
your
your
sla
is
requested
to
be
so,
you
know
how
can
we,
you
know,
number
one
track
or
categorize
slas
number
two:
how
can
we
in
engineering
fashion
and
then
number
two
like?
B
How
can
we
report
against
those
and
gather
metrics
in
a
in
a
scalable
way
so
that
you
know
you
can
build
a
grafana
dashboard
or
whatever
to
talk
about
loads
and
then
and
then
finally,
based
on
those
metrics?
How
could
you
and
basically
metric
and
based
on
the
slas?
How
could
you
alert
so
that's
saying
like
hey
this
image
or
this
bucket
or
whatever
is
falling
outside
your
prescribed.
B
D
D
No
yeah,
that's
that's!.
D
B
D
Well,
yeah,
but
I
think
even.
B
Okay,
certainly
people
have
a
single
prometheus
endpoint
but
yeah
trying
to
shovel
all
this
data.
You
know
to
get
it
just
back
to
the
manager
so
that
it
can,
you
know,
format
a
100
megabyte.
You
know
data
dump
every
you
know
20
seconds.
However
often
it
gets
scraped.
You
know
it's
a
it's
not
scalable.
D
Yeah,
especially
for
evas
that
they
are
small
and
we
have
lots
of
those
and
the
style
is
stated
just
a
clipper
volume.
Probably
so
this
will
be
lots
of
metrics.
E
E
B
B
Or
you
might
have
demons
running,
but
you
know
none
of
them
are
in
like
the
master
mode.
You
know
in
terms
of
being
responsible
for
pushing
or
pulling
data
across.
So
how
do
we
even
just
convey
that
and
say
you
know
alert?
You
know
we
expected
10
demons
to
be
running.
There's
zero,
there's
five
or
alert
there's
you
know
10
damage
running,
but
no
one's
doing
anything
with
the
data
which
must
be.
B
B
B
Else
needs
to
come
down
there
and
it
still
doesn't
tell
you
that
you
know
there's
there's
a
lot
of
logic
in
the
the
dashboard
to
say.
Well,
I
don't
see
any
demons,
so
I
don't
see
any
demons
that
are,
you
know,
reported
as
primary,
so
I'm
going
to
you
know
as
a
dashboard
report
that,
as
you
know,
an
error
warning
and
right
and
not
just
a
generic
service.
That
says
I
expect
you
know
now
that
we
have
that
admin
or
something
like
that.
B
B
E
Well,
stuff
adam
will
take
care
of
that
part
like
if
you
have
a
a
service
spec
that
says
there
should
be
five
demons
running
and
there
are
only
two
of
them
or
whatever
it'll.
It
can
raise
a
warning
for
that
right.
I
think
the
bigger
issue
would
be
like
there
aren't
any
running,
although
even
then
like,
maybe
that's
just
like
a
misconfiguration
like
you
didn't
deploy
it,
and
so
it
doesn't
necessarily
need
to
result
in
the
warning.
E
B
Yeah,
so
just
yeah
yeah,
and
just
to
kind
of
go
back
a
little
bit.
What
kind
of
brought
this
whole
conversation
up
was
well,
obviously,
that
you
know
paul
was
interested
in
gathering
metrics
and
alerts
for
specifically
the
case
of
rbd,
mirroring
and
and
while
it
does
provide
a
lot
of
data,
so
that
data
is,
you
know
from
the
point
of
view
of
you
know,
I
am
kubernetes
and
I
only
read
prometheus
exports
or
something,
but
the
data
is
not
easily
ingestible
or
available.
B
B
E
B
At
tens
of
thousands
of
images,
that's
it's
a
painful
process.
E
E
I
mean
yeah-
I
guess
yeah,
but
in
general,
like
that
usually
going
to
be
on
a
pool
granularity
that,
like
your
remote
link,
is
too
slow
or
it's
down
or
whatever.
B
Yeah
but
without
flas
to
say
that
we
expect
that
you
can
do
x
or
you're
not
allowed
to
get
this
far
behind
and
now
suddenly
a
year
you
know
30
hours
behind
you
know
whatever
you
find
your
cell
is
how
do
you?
How
do
you
generically
and
theory
do
that?
Because
you
know
I
know,
there's
been
issues
with
rgb.
You
know
multi-site
bucket,
sync,
you
know
falling
behind.
B
B
E
What's
in
status,
and
then
there's
like
image
bucket,
whatever
choose
that
volume
right
right
and
then
there's
also
like
beating
this
to
prometheus.
E
Using
some
health
alerts
for
all
the
services
and
then
there's
like
writing
status
and
stuff.
Yes,
dashboard
forever,.
A
I'm
not
the
most
familiar
with
prometheus,
but
would
it
make
sense
to
try
to
have
the
kind
of
report?
Okay
in
the
normal
case,
and
only
report
status,
quick,
individual
volumes
or
images
or
file
systems
or
buckets
and
there's
a
particular
problem
with
them?.
B
A
If
you're,
if
you're
kind
of
like
delegating
the
monitoring
to
the
the
mirroring
demon
or
the
rxws,
and
assuming
that,
if
they're
reporting,
okay,
then
immediate
their
their
handling,
are
okay.
E
That's
funny
yeah
about
a
question
for
the
prometheus
people
yeah
well,
maybe
before
that
is
the
question
of,
should
rbd
mirror
be
feeding
its
metrics
directly
to
prometheus.
B
Well,
so
yeah
there's
no
feed
per
set
of
prometheus.
You
stand
up
or
whatever
web
service
like
export
or
whatever,
so
that
so
they
can
scrape
it.
So
then
you
could.
You
can
then
have
something
where
you
could
have.
You
know
you
know,
via
those
service
demon,
key
value
pairs
you
could
each
demon
could
report.
You
know
here's
my
prometheus
endpoint,
you
know
here's
my
ip
address
and
ports
that
you
can
attach
to
my
premium
server
on
and
then
we
have,
you
know
via
the
manager.
Rest
api.
That's
the
way
to
grab.
B
You
know,
gather
all
the
the
prometheus
endpoints
for
the
system.
So
there's
one
place
they
go
to
to
say:
hey
get
me
all
the
metrics
endpoints.
You
know
for
a
given
type,
be
it
you
know:
rbd
mirroring
versus
rbd,
iscsi
rbd,
nvme
gateways.
You
know
you
know
all
these
things
going
forward.
You
know
so
that
we
don't
have
to
keep
feeding
stats
back.
You
know
to
the
manager
as
a
single
point
of
failure.
B
Yeah,
I
I
I
know
the
rook
team
kind
of
pushed
back
on
being
that
on
that
regards
like
oh,
we
don't
want
to
read
from
another
prometheus
endpoint
like
well,
you
know
at
the
end
of
the
day,
also,
you
can't
just
keep
shoving
all
the
data,
and
you
know
you
already
read
you
know.
Kubernetes
itself
is
reading
from
a
number
of
prometheus
endpoints.
So
I
don't
really
it's
just.
D
D
D
B
Right,
so
if,
if
the
end
solution
is
to
put
a
prometheus
or
an
optionally,
enabled
prometheus
exporter
in
each
demon,
that
you
know
that
we
care
about
metrics
and
alerting
from
you
know,
I
think
that
solves
a
big
chunk
of
the
problems.
But
then
it
you
know,
find
a
way
to
discover
those
endpoints,
you
know
have
a
way
to
turn
them
on
or
off.
If
you
care
about
them
or
don't,
but
then
yeah
it
comes
down
to
it
still
like
at
the
end
of
the
day.
Is
there
a
generic
way
to
do
them?
B
Slash
that
we
care
about
and
want
to
alert
about,
or
do
we
pump
that
problem
and
say
it's
up
to
the
end
system
from
you
know,
doing
those
or
injecting
those
metrics
to
say
like
well.
This
is
violating
I've.
It's
got
to
do
some
correlation
saying
you
know
somehow.
This
other
system
said
that
this
rbd
image,
you
know,
should
be
the
gold.
B
You
know
level
sla,
and
thus
I
see
that
it's
you
know
this
far
behind
and
if
you
put
the
problem
versus
you
know,
try
to
bring
it
in
sorry
or
punch
it
temporarily
and
bring
it
in
later.
I
don't
know.
Maybe
the
first
step
is
really
just
getting
a
way
to
export
these
metrics
and
and
getting
a
commitment
from
all
the
all
the
teams
that
we
want
to.
You
know
move
in
this
direction.
That's
you
know,
rbd
mirroring
rgw
multitype,
you
know
is
going
to
be
able
to
provide
these.
B
E
E
Yeah,
it
seems
like
there's
a
lot
of
homework
to
do
to
see
what
rbd
and
rgbw
are
currently
reporting
and
how
I
think
the
dashboards
fly.
The
only
consumer
really
right
now
is
presenting
it.
How
much
logic
is
there
and
how
to
sort
of
just
try.
B
Yeah,
I'm
going
to
click
for
the
rgb
rbd,
mirroring
point
of
view.
If
it's
a
high
level
metric
or
status
like
it's
a
demon's
data,
something
like
that,
that's
something
that
the
dashboard
can
just
easily
consume
via
those
key
value
pairs.
But
when
it
comes
to
this
individual
images,
you
know
split
brains
like
that.
That's
something
where
the
dashboard
right
now
is
pulling
that
data.
B
It
you
know,
doesn't
have
a
way
to
you
know
it's
not
getting
pushed
to
it
or
whatever
like
pulling
that
from
radius
yeah,
because
we
store
the
the
status
of
each
individual
image
and
its
replication
status.
You
know
locally
and
remote
in
radios,
but
if
we
have
some
consistent
solution,
does
that
then
mean
that
you
know
the
dashboard
is
still
doing
it?
One
way
and
the
you
know
kubernetes
is
in
another
way,
or
is
there
a
way
that
we
can
standardize
that
the
dashboard
pulls
this
data
from
the
same
source?
B
B
E
Me
yes
and
seth
am,
does
deploy
prometheus
and,
as
does
rook,
though
I
mean
we
could
just
do
you
want
that
level
of
reporting
comes
a
required
component.
So
that's
one
option.
E
B
B
Put
it
put
its
database
storage
on
rbd
by
default,
or
you
have
to
get
a
separate
pool.
I
don't
think
so.
No.
E
A
It
sounds
like
if
we
make
that
more
of
our
wire
thing.
If
it's
used
more
heavily,
we
might
need
some
more
monitoring
around
from
eps
itself
and
it's
disk
usage
and
that
kind
of
stuff.
E
E
E
A
All
right
next
one,
then
those
handling
deletion
in
full
clusters.
A
So
I
guess
this
came
up
in
particular,
because
when
clusters
get
very
full,
we
block
writes
to
the
cluster
and
they're
at
the
radius
level,
and
we
have
some
flags
that
you
know
bypass
that
or
this
could
still
do
higher
level
delete
operations,
but
they're
not
being
used
everywhere,
particularly
in
the
manager
modules
for.
A
But
if
your
cluster
is
full
otherwise
you're
using
the
the
manager's
ad,
you
may
be
in
an
estate
where
you're
kind
of
stuck,
but
you
have
to
end
up
increasing
definite
threshold
temporarily
to
be
able
to
leave
things.
And
then,
once
you
have
more
space,
not
going
back
to
usual.
A
B
Well
yeah,
so
I
am,
I
initially
did
actually
a
quick
hack
and
flash
of
for
the
rbd
support
manager,
module
that
it
would.
B
You
know,
because
so
right
now
it's
unfortunate
that
the
the
force,
the
full
tri
flag
or
whatever
it's
it's
applied
globally.
So
it's
weird!
It's
like
it's!
The
api
is
attached
to
the
I
o
context,
but
the
it
actually
applies
it
globally
like
on
the
inside.
B
So
maybe
that's
something
to
look
at
in
the
future,
but
just
for
my
hash
flash
approach,
I
opened
two
two
connections.
Like
here's,
my
you
know,
liberators
connection.
You
know
standard
one,
here's
my
one
that
has
the
full
try
applied
and
that
you
know
and
then
in
the
rvd
support
module
where
it's
doing
the
background,
deletions
and
other
operations.
I
just
had
it
used
the
the
other
radius
connection
that
had
the
that
flag
applied,
but
it
became
trivial
just
to
still
like
block
it.
B
It's
just
because
there's
a
single
thread
in
the
manager
that
is,
the
manager
command
finisher,
so
you
could
have
a
command
that's
running
in
a
totally
unrelated
manager,
module,
let's
say
the
progress
module
or
whatever
that
hits
that
box
fall
blocks
it
and
now
no
operations.
No
no
manager
commands
will
proceed
from
that
point
forward.
B
And
that's
why
I
threw
my
hands
up
from
like
this
is
a
bigger
problem.
Just
trying
to
you
know
tweak
this
one
thing
with
either.
You
know
self-assess
was
the
same
issue
with,
like
you
know,
deleting
some
volumes
or
whatever
that
it
wants
to
be
able
to
do
it
in
the
background
and
again
it
does
it
in
the
manager
and
if
the
manager
is
blocking
some
totally
unrelated
commands,
because
if
the
cluster
is
full
a
lot
of
luck.
A
I
guess
the
bright
side
is
that
there's
not
that
many
things
to
manager
that
actually
write
to
the
readers
directly.
I
think
it's
only
really
the
our
response
module
the
stuff
of
that
support
module
and
maybe
some
things
in
the
dashboard
back
end.
B
Yeah
so
in
this,
in
this
particular
case,
it'd
have
to
be
something
that's
coming
in
on
the
on
the
manager
via
the
manager
command
like
path,
because
that's
where
it
gets
executed
in
just
like
the
one
senator
as
well,
and
maybe.
B
B
E
E
A
And
there
are
some
things
in
like
rbd,
where
you
could
like
for
like
when
you're
opening
the
image.
For
example,
we
do
a
watch
which
is
the
right
operation,
so
that'll
get
blocked,
but
that
could
be
something.
That's
like
a
full
try
all
the
time,
since
that's
not
ready
any
data,
all
right.
E
And
I
wonder
if
what
if
each
module
got
its
own
finisher?
E
B
B
E
A
E
B
Oh
well,
yeah,
so
yeah.
So
the
reason
to
get
back
to
this,
even
if
we
do
it
asynchronously,
which
we
actually
do,
we
use
the
asynchronous
commands
like
we
only
execute
x
number
of
concurrent
commands,
because
we
want
to
like
say,
like
oh
you're
allowed
to
schedule
like
5
000
image
deletions
and
have
at
it.
You
know
now
you
got
the
managers,
you
know
trying
to
execute.
5000
concurrent
delete
operations.
B
E
B
B
When
you're
not
at
clan
scale,
it's
a
lot
easier
to
become
full
yeah,
so
these
are.
These
are
high
level
concepts
that
are
never
like.
People
really
didn't
concern
themselves
about
yeah,
and
even
me
historically,
I
was
like
you
know.
People
said,
oh
my
I
got
my
cluster
called
like.
How
do
you
do
that?
Well,
I
just
have
like
you
know,
a
five
gigabyte
cluster,
okay.
A
Another
possibility-
and
maybe
this
is
a
terrible
idea-
might
be
using
a
full
try
everywhere
in
the
manager
so
that
everything
would
be
like
succeeding
or
failing
and
not
hanging.
A
A
D
B
Yeah,
I'm
less
concerned
about
our
video
movements.
We
have
lots
of
negative
testing
with
unit
tests
on
we
receive
unexpected
errors
like
constantly
every.
If
we
try
to
have
at
least
one
you
know,
every
branch
have
a
test
case
that
you
know
injects
a
fault.
You
know,
because
you
you
can
get
like
a
an
e
perm
or
you
know
error
at
any
time.
The
what's
the
other
one,
the
block
listed
loan,
the
e
block
list-
or
you
know
any
number
of
things.
So
we.
B
B
E
A
I
think
that
api
was
only
added
for
the
rbdcli
support,
but
you
can
more
generically
passed
past
the
flag
with
any
operation
descending
deliberatives.
B
A
I
think
if
we
end
up
like
calling
into
the
same
module
since
they're
each
running
in
their
own
excel
interpreter
right,
then
we
went
into
issues
with
the
global
interpreter
lock.
Potentially,
if
we're
not
using
some
kind
of
threading
at
the
python
level
yeah,
I
think
you're
right,
josh,
python,
threading
kind
of
sucks,
but.
A
It
functions
which
I'm
not
sure
that
yeah
it
works
so
well
with.
E
C
C
On
the
subject
of
full
try
and
full
force
flags,
I
just
remembered,
like
an
old
tracker
ticket
that
I
filed
when
looking
into
the
kernel
client
and
making
sure
that
those
flags
like
making
sure
I
basically
understand
the
semantics
of
those
flags,
and
I
think
the
issue
with
full
force
is
still
not
fixed.
C
C
I'm
not
sure
if
it
pertains
to
the
manager
discussion
anyway,
but
I'm
guessing
that
there
might
be
some
cases
where
you
know
there
might
be
some
operations
which
we
really
do
want
to
force.
C
A
Yeah,
I
think
you're
right
about
the
behavior,
not
not
changing.
I
think
that's
still
a
bug,
but
we
can
see
how
far
we
can
get
without
using
a
full
force
and
just
rely
on
a
full
try.
C
C
That's
currently
vulnerable
to
to
just
basically
not
it
doesn't
work,
because
we
don't
supply
any
of
these
flags
precisely
because
I
was
looking
into
it
and
my
conclusion
was
that
things
are
pretty
broken
and
yeah,
so
I
just
thought
I'd
bring
this
up,
given
that
we're
talking
about
cool
handling,
because
I
I
do
think
that
we
that,
if
we're
serious
about
food
handling,
we
do
need
a
way
to
free
up
space
on
images
that
are
already
mapped
in
our
file
systems
that
are
already
mounted,
because
you
know
the
same
the
same
cluster.
C
You
know
it's
not
even
purple.
It's
also
you
know
per
cluster,
even
though
we
got
rid
of
the
global
full
flags
in
the
usd
map.
I
think
some
of
these
fail-safe
checks
are
still
not
are
still
global,
and
so
we
can
still
run
into
this.
C
I
don't
think
so,
at
least
not
in
the
rbd
case
or.
C
I
think
you
know.
C
Case
where,
for
example,
due
to
some
complicated
like
cloning
operation
or
you
know,
complicated
chain
of
stacked
clones,
maybe,
but
in
that
case
it's
acceptable
to
fail
without
a
space,
but
if
you
just
have
like
a
plain
image
where
a
discardments
punch
a
hole
in
the
object
or
playing
cfs
file,
where
cloning
isn't
even
an
option
right,
if
you
write,
if
you
do
a
you
know,
punch
hole
operation,
that's
always
that's
always
supposed
to
free
up
space.
C
C
Yeah,
like
I
said,
I
don't
have
the
like
the
current
status
or
I
just
remember,
to
buy
that
ticket,
and
I
I
do
I
seem
to
remember
you
know
having
some
notes
on
this
subject,
but
I
was
trying
to
find
them
now
and
I
couldn't,
but
the
trucker
ticket
came
up
it
just
like,
and
then
this
area
clearly
needs
some
attention.
A
Yeah
definitely
we
introduced
these
flags
like
several
years
back
but
didn't
end
up
using
them
everywhere,
and
so
any
things
probably
don't
quite
handle
the
full
cluster,
well,
which
point.
A
We
probably
should
talk
about
that
in
rgw
context.
Sometimes
too
much,
I
don't
think
it's
using
we'll,
try
it
either.
E
B
Code
well,
the
whole
punching
would
always
work
or
like
what
is
it?
How
does
the
osd
determine
that?
It's
not
going
to
increase
the
space,
because
what,
if
it
was
out
on
a
line,
hole
punch
compared
to
the
blue
store
block
allocation,
or
what
have
you.
E
B
As
long
as
you
point
out
as
long
as
it's
as
long
as
it's
a
truncate
or
something
like
that,
it
counts
as
right.
E
C
Even
if
it's
less
than
the
like
allocation
unit,
that's
just
a
no-op,
currently
new
store-
or
at
least
it
used
to
be
not
not
that
long
ago,
so
that
that
that
should
keep
those
counters
the
same
and
nothing's
gonna
change
from
the
client
perspective.
But
it
shouldn't
be
an
error.
Yeah.
E
A
It
also
doesn't
account
for
for
outsiders
at
this
point.
Just
data
changed
yeah.
A
E
A
A
Yeah
so
it
sounds
like
we
have
some
different,
faster
explorer
here,
for
maybe
maybe
possibly
different
approaches
for
our
games.
A
A
It
isn't,
what
do
you
think
we
should
do
with
the
is
there
anything
you
should
do
with
the
adventures
in
the.
B
Manager,
yeah,
you
know,
I'm
not
familiar
enough
at
a
a
low
level
with
how
that
all
executes
I
mean
I
would
rather
see
the
python
threading
than
a
bunch
of
per
module
threads,
but
if.
F
That's
possible
yeah
yeah.
Is
that
code
actually
called?
If
I
remember
a
while
ago,
we
decided
to
not
properly
shut
down
the
manager
but
more
or
less
killed,
because
that
was
not
really
possible
to.
E
A
Does
fadm
do
anything
that
could
block
for
a
long
time
with
handling
commands.
F
Yeah,
but
that
should
no
longer
block
that
command.
F
A
A
Something
yep,
maybe
we
could
expand
that
to
the
so
might,
as
in
general,
have
access
to
the
workflow
like.
A
A
As
I
think,
maybe
we
could
make
that
accessible
as
a
generic
feature
for
modules
to
be
able
to
use
use
this
pool
of
worker
threads.
You.
A
F
I'm
just
worried
about
already
too
full
much
stuff
is
going
on
on
the
manager,
with
the
premises
module
with
the
dashboard
module,
with
all
the
modules
that
I
don't
know
how
many
threads
f-radium
should
actually
create
right
now
we
are
hard-coding
it
to
10.
F
F
F
F
A
And
perhaps
it
could
even
be
dynamic
based
on
if
we
need
for
out
of
threads
capacity,
even
a
lot
for
lighter
cluster.
If
we
detect
that
the
manager
is,
has
a
higher
q
depth
coming
in
increase
the
number
of
threads.
F
I
don't
know
I
don't
know,
I
have
a
big
enough
cluster
to
actually
play
with
it.
F
I
mean
I,
I
don't,
and
I
know
that
the
promises
module
was
not
really
able
to
keep
up
with
the
demands
from
from
from
isis.
A
Whereas
cypadium,
I
don't
think
it's
doing
so
much
workout
requires
resources.
F
A
Right
right,
we
talked
about
maybe
moving
those
into
like
a
raiders
pool
right
yeah,
at
least
some
some
part
of
it.
I
think
I
think
that
would
address
like
that.
A
lot
of
the
concerns
around
them
like
throughput.
There
would
be
a
scalable
cluster
rather
than
the
monitors,
which
are
inherently
not
scalable,
io.
F
I
I
don't
know
if
that's
actually
a
good
idea
to
make
critical
data
be
stored
in
raiders
I
mean
if,
if
the
pool
is
no
longer
readable
or
writeable,
then
self
admin
would
not
be
able
to
redeploy
these.
A
F
And
if
we
increase
the
the
threat
pool,
then
we
are
making
more
requests.
Write,
requests
to
configure.
E
F
E
My
my
guess
is
that
the
config
key
stuff
isn't
matching
and
that's
what
the
throughput
issue
is,
but
basically
remains
constant.
Even
when
you
have
lots
of
concurrent
rights.
E
Yeah,
I
mean,
I
think
we
can
just
easily
test
it
locally
too.
I
think,
in
order
to
have
a
real,
a
better
sense
of
like
how
it
I
think
doing
a
micro
benchmark
like
this
to
figure
out
how
many
like
concurrent
region
or
whatever
rights
it
can
sustain,
would
be
one
thing
and
then
getting
a
sense
of
how
many
writes
we
generate
based
on
the
size
of
a
cluster
would
be
the
next
thing
and
then
do
some
simple
extrapolation
to
see
where
we
would
expect.
E
E
C
So
there
is
a
pull
request
that
adds
in
transit
compression
to
the
messenger,
and
I
wanted
to
ask
if,
if
there
was
any
sort
of
like
discussion
that
took
place
on
whether
the
messenger
is
the
right
place
to
do
that
or
whether
it
should
perhaps
be
tailored
to
just
certain
messages,
because
or
you
know,
certain
payloads
of
certain
messages,
such
as
the
back
end,
toes
detail,
hd
replication
communication,
the
the
title
of
the
pull
request.
C
I
guess
I
can
paste
the
link
says
that
it's
geared
towards
detailsd
communication,
but
obviously
putting
it
in
the
messenger,
also
enables
applying
to
hd
and
any
other
connection
to
be
transparently
compressed.
But,
like
the
question
is,
is
that?
Is
that
really
the
right
place
to
do
it?
Because
again
taking
the
3x
replica
is
the
most
common
setup?
C
The
primary
osd
will
end
up
decompressing
and
compressing
the
same
data.
Basically,
you
know
at
least
twice
redundantly,
because,
unlike
encryption,
that
has
to
move
in
the
messenger
because,
first
of
all,
we
want
it
for
everything
and
not
just
for
primarily
for
back-end
communication.
C
The
the
encryption
key
is
per
session,
and
so
it's
actually
like
a
different
stream
of
bytes,
whereas
the
compression
is
basically
the
same
transformation
applied
each
time.
The
message
is
received
and
then
re-encoded
in
a
slightly
different
form
for
for
for
sending
it
to
to
the
replicas.
C
It
attempts
to
do
the
whole
message:
it
does
it
per
per
perform
your
middle
per
data,
so
per
section
or
whatever
they're
called,
and
there
is
a
it
attempts
to
do
it.
C
C
So
it
also
introduced
a
new
flag
to
the
preamble
of
the
message
to
say
whether
it's
compressed
or
not.
So
it's
not.
You
know
not
particularly
terrible
so,
but
I
was
just
wondering
whether
it's
in
the
right
place
to
do
it
because
it
it
seems
to
be
that
really
the
benefit
is
always
detail.
C
Is
the
communication
in
the
in
the
cases
where
the
cluster
is
stretched
and
so
putting
in
the
messenger
just
adds
additional
spu
overhead
and
given
our
crimson
efforts,
epu
is
really
the
most
sparse
resource
and
going
forward
it
will
be,
it
will
be
our
most
cost
resource.
I
think.
E
Yeah,
I
mean,
I
wonder
if
it
seems
like
the
benefit
is
going
to
be
on
the
data
payload,
primarily
not
the
other
parts,
certainly
for
like
oc
traffic.
So
you
could
imagine
changing
the
message
interface
so
that
instead
of
doing
set
data
and
giving
it
the
data
buffer,
you
could
do
you
could
pass
it
a
compressed
buffer
and
the
message
header
would
have
something
indicating
that
the
data
payload
is
compressed
under
the
particular
codec.
E
And
that
way
you
could
compress
it
once
and
then
pass
it
to
both
the
messages
that
go
to
the
two
replicas
or
even
if
data
comes
off
from
the
incoming
right
from
the
client.
If
the
client
can
press
the
data
when
it
sent
it
and
you
could
look
at
its
disposition
and
use
that
compressed
intuitively
pass
it
all
the
way
through.
C
Yeah
and
and
going
further
you
could
you
could,
maybe
even
you
know
not
do
it
for
for
messages
that
you
know
are
not
gonna
be
compressible,
so
not
not
even
try
and
not
even
do
that
initial
step
where
it
tries
to
compress
and
then
yeah.
C
C
C
So
we
should
probably
disallow
that
the
reasons
that
were
given
are
you
know,
save
money
in
the
in
the
stretch,
cluster
cases,
but
again
someone
who
enables
compression
or
sorry
someone
here
enables
encryption
for
everything
probably
cares
a
lot
more
about
about
security,
and
we
just
shouldn't
be
allowing
that
mode
in
the
first
place,
just
to
avoid
any
potential
issues.
There.
A
Yeah
this
project
was
entered
by
josh
solomon.
Okay.
A
That
much,
I
think
your
internship's
over
now
at
this
point
so
want
it,
makes
that
more
changes
to
this
opiate.
Another
project.