+1 to echoing the Request ID in all cases. I've made the case for this previously on the predecessor thread: https://lists.apache.org/thread/0ocsqmvd3kzk3qwkf1tcflgztp5rqtqr.
I'm okay with putting a feature flag around this in the future, if there are users who consider this to be noise. But I don't think we need this today. Best, Adnan Hemani On Sun, Nov 2, 2025 at 12:16 AM Jean-Baptiste Onofré <[email protected]> wrote: > Hi > > I'm in favor of still echoing the X-Request-Id header. The purpose is > to define a kind of correlation and idempotency, established by the > client. It's a "classic" pattern in messaging systems. > For instance, in many Apache Camel routes dealing with REST endpoints, > we usually define X-Request-Id header in POST, PUT, and PATCH to > ensure idempotent message processing in case of a retry. > > So, it's up to a client to deal with X-Request-Id in response (and do > the correlation if needed). > > To simplify the "engineering", we could only echo X-Request-Id if > provided in the request. > > Regards > JB > > On Fri, Oct 31, 2025 at 1:16 PM Alexandre Dutra <[email protected]> wrote: > > > > Hi all, > > > > This thread follows up on [1] to discuss whether we should echo the > > client-generated X-Request-Id header in the response. > > > > Before Quarkus, the situation was unclear: Polaris on Dropwizard [2] > > did not seem to echo the header, but Dropwizard itself has a > > RequestIdFilter that does [3]. > > > > We have two options: > > > > 1) Echo the X-Request-Id header. > > - Pros: Allows clients to correlate requests and responses. > > - Cons: risk of over-engineering since we don't have users asking > for this. > > > > 2) Do not echo the X-Request-Id header. > > - Pros: No action required on the Polaris side. > > - Cons: None apparent. > > > > I don't have a strong opinion, but I slightly favor option 1 to > > accommodate those who strongly value this feature. > > > > Thoughts? > > > > Thanks, > > Alex > > > > [1] https://lists.apache.org/thread/bb1qyxjt827t3tomv2xp0s1kovxjsp94 > > [2] > https://github.com/apache/polaris/blob/4b18ec065ff16f74b11bc85fdc6ea9036eca7274/dropwizard/service/src/main/java/org/apache/polaris/service/dropwizard/PolarisApplication.java#L516 > > [3] > https://github.com/dropwizard/dropwizard/blob/3833f0e1d9fb8cae256fe09379733b8d651f8b87/dropwizard-jersey/src/main/java/io/dropwizard/jersey/filter/RequestIdFilter.java#L42-L49 >
