jerryshao commented on PR #8336: URL: https://github.com/apache/gravitino/pull/8336#issuecomment-3242190347
> > > What's the upgrade steps? > > > > > > 1. Update the server when enabling compatible > > > 2. New clients and old clients can access the server at the same time > > > 3. Remove old clients > > > 4. Switch off the compatible the feature > > > > > > For stage 2, we should handle the new clients and old clients at the same time. Now , we can't handle the new clients and old clients at the same time from the code. > > > > > > Yeah, seems like the step 2 is the problem. For most of the case (no % in the string), encoding once and decoding twice is fine without issue, but we cannot guarantee all the corner cases. > > We can add a client version to the request header so that the server can identify the client version and no longer needs to rely on the `enableCompatibility` configuration manually. What is the behavior if user doesn't specify the client version in the header? Shall we use the new or old API? Normally, it should use the new API, if so, seems we cannot do the backward compatibility (because old client doesn't have the version number in the header). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
