Skip to content

Making 9.2.x backwards compatible with 9.1.x - #8661

Merged
bneradt merged 1 commit into
apache:masterfrom
bneradt:make_master_backwards_compatible
Feb 15, 2022
Merged

Making 9.2.x backwards compatible with 9.1.x#8661
bneradt merged 1 commit into
apache:masterfrom
bneradt:make_master_backwards_compatible

Conversation

@bneradt

@bneradt bneradt commented Feb 10, 2022

Copy link
Copy Markdown
Contributor

In order to make 9.2.x backwards compatible against plugins compiled
with 9.1.x, this PR does the following:

  1. Adds back exposed enum values removed in 9.2.x
  2. Any added enum values are put at the end of their enumeration lists.
  3. Adds back the TSHttpTxnCntl function

@bneradt bneradt added this to the 10.0.0 milestone Feb 10, 2022
@bneradt
bneradt requested a review from zwoop February 10, 2022 00:42
@bneradt bneradt self-assigned this Feb 10, 2022
@bneradt
bneradt requested a review from bryancall as a code owner February 10, 2022 00:42
@bneradt

bneradt commented Feb 10, 2022

Copy link
Copy Markdown
Contributor Author

We'll want this for the 9.x trains (currently 9.2.x and master), but not for the 10.x train. That experimental TSHttpTxnCntl should not exist in 10.x. Thus after this is merged, I'll merge up 10-Dev and then revert this patch from there.

@bneradt
bneradt force-pushed the make_master_backwards_compatible branch from ae385fc to c819272 Compare February 10, 2022 16:37
@zwoop

zwoop commented Feb 10, 2022

Copy link
Copy Markdown
Contributor

Are you sure we really need that experimental crud? Is someone using it? :-). The Lua feature has been updated already to use the new API and should be in 9.2.x.

@bneradt

ghost commented Feb 10, 2022

Copy link
Copy Markdown
Contributor Author

Are you sure we really need that experimental crud? Is someone using it? :-). The Lua feature has been updated already to use the new API and should be in 9.2.x.

I vote to remove it in 10.x, but keep it for 9.2.x. Yahoo has an internal plugin that uses the TSHttpTxnCntl function.

@bneradt
bneradt force-pushed the make_master_backwards_compatible branch from c819272 to d584def Compare February 11, 2022 18:24
@bneradt

ghost commented Feb 11, 2022

Copy link
Copy Markdown
Contributor Author

Oh, I see. The regression tests try to use the proxy.client.verify.server config via the TS_CONFIG_SSL_CLIENT_VERIFY_SERVER which I put back in to preserve the ABI, but it fails because none of that is implemented now.

@zwoop / @randall : I think we'll have to back out #7639 from 9.2.x. 10.x will be fine, for sure, but I don't think we can remove porxy.client.verify.server and be compatible with the previous 9.x branches.

@bneradt
bneradt force-pushed the make_master_backwards_compatible branch 2 times, most recently from f5f05f4 to f7f221e Compare February 11, 2022 19:09
@bneradt

ghost commented Feb 11, 2022

Copy link
Copy Markdown
Contributor Author

Oh, I see. The regression tests try to use the proxy.client.verify.server config via the TS_CONFIG_SSL_CLIENT_VERIFY_SERVER which I put back in to preserve the ABI, but it fails because none of that is implemented now.

@zwoop / @randall : I think we'll have to back out #7639 from 9.2.x. 10.x will be fine, for sure, but I don't think we can remove porxy.client.verify.server and be compatible with the previous 9.x branches.

As an alternative to this, I'm updating the InkAPITest.cc to handle the defunct proxy.client.verify.server config. If this seems OK to @randall and @zwoop, then we can move forward with that.

In order to make 9.2.x backwards compatible against plugins compiled
with 9.1.x, this PR does the following:

1. Adds back exposed enum values removed in 9.2.x
2. Any added enum values are put at the end of their enumeration lists.
3. Adds back the TSHttpTxnCntl function
@bneradt
bneradt force-pushed the make_master_backwards_compatible branch from f7f221e to ebd0460 Compare February 15, 2022 01:09
@bneradt
bneradt merged commit c04ccc8 into apache:master Feb 15, 2022
@bneradt
bneradt deleted the make_master_backwards_compatible branch February 15, 2022 17:46
@bryancall

ghost commented Feb 15, 2022

Copy link
Copy Markdown
Contributor

@bneradt

ghost commented Feb 15, 2022

Copy link
Copy Markdown
Contributor Author

I am still seeing some issue with data types:
https://trafficserver.apache.org/compat_reports/traffic_server/9.1.x_to_master/compat_report.html

We talked about this offline, but just to record it here: this will happen on master because the configure.ac defines TS_VERSION_MAJOR as 10, so some enum values and definitions are removed in master. This shouldn't be a problem once this patch is picked back to 9.2.x.

@zwoop

ghost commented Feb 17, 2022

Copy link
Copy Markdown
Contributor

Cherry-picked to v9.2.x

@zwoop zwoop modified the milestones: 10.0.0, 9.2.0 Feb 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants