Project

General

Profile

Actions

Bug #50291

closed

ceph-16.2.0 builds have started failing in Fedora 35/rawhide w/ librabbitmq-0.11.0

Added by Kaleb KEITHLEY about 3 years ago. Updated over 2 years ago.

Status:
Resolved
Priority:
Normal
Target version:
-
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
pacific, octopus
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
rgw
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Fedora 35 and Fedora ELN (enterprise linux next, a.k.a. rhel9) have updated to from librabbitmq-0.10.0 to -0.11.0 and builds are now failing. See, e.g., https://kojipkgs.fedoraproject.org//work/tasks/4144/65634144/build.log

librabbitmq's amqp_simple_wait_frame_noblock() changed the 'struct timeval *' to 'const struct timeval *'

(Note: extern "C" { ... } may not be necessary. I just found it strange that libamqp_mock's amqp_simple_wait_frame_noblock() symbol currently has a C++ mangled symbol name while the one in /usr/lib64/librabbitmq.so.4 is obviously not mangled.

FWIW, I did not dig very hard or far to figure out whether before now libamqp_mock's amqp_simple_wait_frame_noblock() was also mangled, or how the test programs which have an unmangled reference to amqp_simple_wait_frame_noblock() could have linked with it then, but not now.)

I fixed it with with the following change:

--- a/src/test/rgw/amqp_mock.cc
+++ b/src/test/rgw/amqp_mock.cc
@@ -291,7 +291,11 @@ amqp_confirm_select_ok_t* amqp_confirm_select(amqp_connection_state_t state, amq
   return state->confirm;
 }

-int amqp_simple_wait_frame_noblock(amqp_connection_state_t state, amqp_frame_t *decoded_frame, struct timeval* tv) {
+extern "C" {
+
+int amqp_simple_wait_frame_noblock(amqp_connection_state_t state,
+                                   amqp_frame_t *decoded_frame,
+                                   const struct timeval* tv) {
   if (state->socket && state->socket->open_called &&
       state->login_called && state->channel1 && state->channel2 && state->exchange &&
       state->queue && state->consume && state->confirm && !FAIL_NEXT_READ) {
@@ -345,6 +349,7 @@ int amqp_simple_wait_frame_noblock(amqp_connection_state_t state, amqp_frame_t *
   }
   return AMQP_STATUS_CONNECTION_CLOSED;
 }
+} // extern "C" 

 amqp_basic_consume_ok_t* amqp_basic_consume(
     amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue,


Files

0011-src-test-rgw-amqp_mock.cc.patch (1.02 KB) 0011-src-test-rgw-amqp_mock.cc.patch Kaleb KEITHLEY, 04/10/2021 12:07 PM

Related issues 2 (0 open2 closed)

Copied to rgw - Backport #50379: pacific: ceph-16.2.0 builds have started failing in Fedora 35/rawhide w/ librabbitmq-0.11.0ResolvedCory SnyderActions
Copied to rgw - Backport #50380: octopus: ceph-16.2.0 builds have started failing in Fedora 35/rawhide w/ librabbitmq-0.11.0ResolvedCory SnyderActions
Actions #1

Updated by Kaleb KEITHLEY about 3 years ago

tracker managed the patch so I've added it as an attachment

Actions #2

Updated by Kaleb KEITHLEY about 3 years ago

Fedora 34 has also recently updated to librabbitmq-0.11.0

Actions #3

Updated by Yuval Lifshitz about 3 years ago

  • Status changed from New to Fix Under Review
  • Pull request ID set to 40800
Actions #4

Updated by Yuval Lifshitz about 3 years ago

  • Backport set to pacific, octopus
Actions #5

Updated by Kefu Chai about 3 years ago

  • Description updated (diff)
Actions #6

Updated by Casey Bodley about 3 years ago

  • Status changed from Fix Under Review to Pending Backport
Actions #7

Updated by Backport Bot about 3 years ago

  • Copied to Backport #50379: pacific: ceph-16.2.0 builds have started failing in Fedora 35/rawhide w/ librabbitmq-0.11.0 added
Actions #8

Updated by Backport Bot about 3 years ago

  • Copied to Backport #50380: octopus: ceph-16.2.0 builds have started failing in Fedora 35/rawhide w/ librabbitmq-0.11.0 added
Actions #9

Updated by Loïc Dachary almost 3 years ago

  • Target version changed from v16.2.1 to v16.2.2
Actions #10

Updated by Loïc Dachary almost 3 years ago

  • Target version deleted (v16.2.2)
Actions #11

Updated by Loïc Dachary over 2 years ago

  • Status changed from Pending Backport to Resolved

While running with --resolve-parent, the script "backport-create-issue" noticed that all backports of this issue are in status "Resolved" or "Rejected".

Actions

Also available in: Atom PDF