MAJOR: spoe: Deprecate the SPOE filter

As announced on the ML few weeks (months ?) ago and on several GH issues,
the SPOE is now deprecated. Sadly, this filter should be refactored to work
properly. It was implemented as a functionnal PoC for the 1.7 and since
then, no time was invest to improve it and make it truly maintainable in
time. Worst, other parts of HAProxy evolve, especially applets part, making
maintenance ever more expensive.

Instead of keeping the SPOE filter in a this state and always reply to users
encountering issues or limitations that it is far from perfect but we cannot
work on it for now, we decided to deprecate it.

We can still change our mind before the 3.0.0 release if the situation
evolves. Otherwise the filter will be removed or marked as unmaintained for
the 3.1. If the situation does not change, it means the 3.0 will be the last
version with a true SPOE support.
This commit is contained in:
Christopher Faulet 2024-03-14 11:53:27 +01:00
parent 6547b14292
commit dff9807188
4 changed files with 12 additions and 3 deletions

View File

@ -138,7 +138,7 @@ ScientiaMobile WURFL Device Detection
Maintainer: Paul Borile, Massimiliano Bellomi <wurfl-haproxy-support@scientiamobile.com>
Files: addons/wurfl, doc/WURFL-device-detection.txt
SPOE
SPOE (deprecated)
Maintainer: Christopher Faulet <cfaulet@haproxy.com>
Files: src/flt_spoe.c, include/haproxy/spoe*.h, doc/SPOE.txt

View File

@ -7,6 +7,10 @@
Contact : cfaulet at haproxy dot com
WARNING: The SPOE is now deprecated and will be removed in future version.
SUMMARY
--------

View File

@ -13863,7 +13863,7 @@ sc-inc-gpc0 X X X X X X X
sc-inc-gpc1 X X X X X X X
sc-set-gpt X X X X X X X
sc-set-gpt0 X X X X X X X
send-spoe-group - - X X X X -
send-spoe-group (deprecated) - - X X X X -
set-bandwidth-limit - - X X X X -
set-bc-mark - - X - X - -
set-bc-tos - - X - X - -
@ -14724,7 +14724,7 @@ sc-set-gpt0(<sc-id>) { <int> | <expr> }
See also the "sc-set-gpt" action.
send-spoe-group <engine-name> <group-name>
send-spoe-group <engine-name> <group-name> (deprecated)
Usable in: TCP RqCon| RqSes| RqCnt| RsCnt| HTTP Req| Res| Aft
- | - | X | X | X | X | -
@ -26618,6 +26618,8 @@ the Stream Processing Offload Protocol (SPOP).
For all information about the SPOE configuration and the SPOP specification, see
"doc/SPOE.txt".
WARNING: The SPOE filter is now deprecated.
9.4. Cache
----------

View File

@ -4105,6 +4105,9 @@ parse_spoe_flt(char **args, int *cur_arg, struct proxy *px,
curpxopts = 0;
curpxopts2 = 0;
ha_warning("Proxy %s: SPOE filter is deprecated and will be removed in future version.\n", px->id);
conf = calloc(1, sizeof(*conf));
if (conf == NULL) {
memprintf(err, "%s: out of memory", args[*cur_arg]);