Skip to content

blkin: remove blkin trace submodule and cleanup#48971

Closed
zenomri wants to merge 10 commits intoceph:mainfrom
zenomri:wip-omri-blkin-cleanup
Closed

blkin: remove blkin trace submodule and cleanup#48971
zenomri wants to merge 10 commits intoceph:mainfrom
zenomri:wip-omri-blkin-cleanup

Conversation

@zenomri
Copy link

@zenomri zenomri commented Nov 20, 2022

This PR comes to remove the blkin trace submodule, and all of its usages
including librados API methods and tests that used it.

since the opentelemetry tracing infrastructure becomes mature in ceph, and the blkin is out of use, we can safely remove/replace it

this cleanup also changes some of the messages that were carrying that blkin trace info,
so now those messages carries the o-tel trace info instead of blkin - but for backward compatibility we still support decode of blkin struct for old messages

Checklist

  • Tracker (select at least one)
    • References tracker ticket
    • Very recent bug; references commit where it was introduced
    • New feature (ticket optional)
    • Doc update (no ticket needed)
    • Code cleanup (no ticket needed)
  • Component impact
    • Affects Dashboard, opened tracker ticket
    • Affects Orchestrator, opened tracker ticket
    • No impact that needs to be tracked
  • Documentation (select at least one)
    • Updates relevant documentation
    • No doc update is appropriate
  • Tests (select at least one)
Show available Jenkins commands
  • jenkins retest this please
  • jenkins test classic perf
  • jenkins test crimson perf
  • jenkins test signed
  • jenkins test make check
  • jenkins test make check arm64
  • jenkins test submodules
  • jenkins test dashboard
  • jenkins test dashboard cephadm
  • jenkins test api
  • jenkins test docs
  • jenkins render docs
  • jenkins test ceph-volume all
  • jenkins test ceph-volume tox
  • jenkins test windows

Omri Zeneva added 10 commits November 20, 2022 04:10
this commit includes all commits of PR ceph#47457
once it will be merged the commit will be deleted from this PR

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
this commit remove the tracer initialization from common init,
and also related config options

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
we create a static default span context for funcitons
that do not have trace info, but must pass it forward.
so with this object we won't create and copy the context
each time

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
this commit replaces blkin structs by opentelemetry
span context.
it also remove the tracer endpoint initialization,
and everything that related to blkin trace

all of the functions that gets a blkin trace info,
now gets an opentelemetry one

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
this commit replaces the blkin param from librados
api methods by opentelemetry span context

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
instead of blkin trace info that passes with messages,
we replace it with o-tel trace info
we must support backward compatibility so we need
to keep decode the old trace info, but new messages
will have o-tel trace, so version increase is mandatory

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
since we removed the blkin submodule, we can't use it
in file/bluestore also

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
const rgw_bucket_entry_ver& ver, RGWPendingState state, uint64_t index_ver,
string& max_marker, uint16_t bilog_flags, string *owner, string *owner_display_name, rgw_zone_set *zones_trace)
string& max_marker, uint16_t bilog_flags, string *owner, string *owner_display_name, rgw_zone_set *zones_trace,
const jspan_context* bilog_trace = nullptr)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the bilog trace change seems unrelated to the blkin cleanup

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed. It's part of the previous PR, which we depend on.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added DNM tag, as this PR will have to wait until thew other is merged.

}

jspan Tracer::add_span(opentelemetry::nostd::string_view span_name, const jspan_context& parent_ctx) {
if (is_enabled() && parent_ctx.IsValid()) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changes in this file seem unrelated to the blkin cleanup

@github-actions
Copy link

This pull request can no longer be automatically merged: a rebase is needed and changes have to be manually resolved

#include "common/Readahead.h"
#include "common/snap_types.h"
#include "common/zipkin_trace.h"
#include "common/tracer.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do you really need this header here?

#include "include/Context.h"
#include "common/snap_types.h"
#include "common/zipkin_trace.h"
#include "common/tracer.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is this needed?

io::ReadExtents* extents;
IOContext io_context;
const ZTracer::Trace parent_trace;
const jspan_context parent_trace{false, false};
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why did you create the trace here, and not just passed the null trace (as in the previous examples)?

virtual ~ImageRequest() {
m_trace.event("finish");
}
virtual ~ImageRequest() {}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit:

Suggested change
virtual ~ImageRequest() {}
virtual ~ImageRequest() = default;

@rzarzynski rzarzynski requested a review from yuvalif June 27, 2023 16:28
@yuvalif
Copy link
Contributor

yuvalif commented Jun 27, 2023

From core PR scrub: what's the status of this PR? It's severely conflicted. Should we close?

it is a followup PR to: #52114
once the above is merged, i'll be able to finis this one

@github-actions
Copy link

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label Aug 26, 2023
@yuvalif
Copy link
Contributor

yuvalif commented Sep 3, 2023

lets keep it opened for now

@github-actions github-actions bot removed the stale label Sep 3, 2023
@github-actions
Copy link

github-actions bot commented Nov 2, 2023

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label Nov 2, 2023
@yuvalif
Copy link
Contributor

yuvalif commented Nov 2, 2023

unstale please

@github-actions github-actions bot removed the stale label Nov 2, 2023
@github-actions
Copy link

github-actions bot commented Jan 1, 2024

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label Jan 1, 2024
@yuvalif
Copy link
Contributor

yuvalif commented Jan 2, 2024

unstale please

@github-actions github-actions bot removed the stale label Jan 2, 2024
@cbodley
Copy link
Contributor

cbodley commented Jan 23, 2024

would be great to land this and #52114 for squid!

@github-actions
Copy link

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label Mar 23, 2024
@yuvalif
Copy link
Contributor

yuvalif commented Mar 28, 2024

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days. If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward. If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

unstale please

@github-actions github-actions bot removed the stale label Mar 28, 2024
@github-actions
Copy link

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label May 27, 2024
@yuvalif
Copy link
Contributor

yuvalif commented May 28, 2024

unstale please

@github-actions github-actions bot removed the stale label May 28, 2024
@adamemerson
Copy link
Contributor

@yuvalif Is this something we still need? I thought the new tracing obsoleted blkn.

@adamemerson
Copy link
Contributor

Wait, never mind, this is removing blkn.

@cbodley
Copy link
Contributor

cbodley commented Jul 24, 2024

#55499 added this release note for squid:

The blkin tracing feature is now deprecated in favor of Opentracing and will be removed in a later release.

i'd support removing this for T if someone's willing to work through the rebase

@adamemerson
Copy link
Contributor

Closing in favor of #59365 , but thank you for getting everything started and doing so much work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants