Project

General

Profile

Actions

Task #74501

closed

Remove igbinary from cache framework

Added by Mathias Schreiber over 8 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
-
Target version:
Start date:
2016-03-08
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
8
PHP Version:
Tags:
Complexity:
Sprint Focus:

Description

The patch removes igbinary serializer support from the cache framework.
When igbinary support was added back then in PHP 5.3 times, it had the potential to serialize data quicker than the default serializer.

Unfortunately, other promises aren't held:
  • The module found no general acceptance within the PHP community and isn't supported very well. PHP 7 is still not officially supported.
  • Last release at the time of this writing was in 2014-08
  • The module must still be compiled from source and no recent distribution ever packaged it by default
  • The maintenance load on devOps side is high: The module must be recompiled with each minor php release
  • In case the module is not updated, it throws errors at a central place of the system and can easily brick a whole instance
  • The module found no huge acceptance by hosters and is only very rarely used in real life instances
  • A performance impact is only measurable in very small and highly specialized use cases, it typically plays no role in casual frontend or backend requests.

We've seen several life systems in the wild lately with sloppy hosters not maintaining the igbinary module within their infrastructure properly.
The current implementation with VariableFrontend dynamically detecting and then force using the module leads to hard crashes in those situations.
The main issue is that serializing is done via PHPs serializer and unserializing using igbinary then fails, effectively rendering the entire installation bricked.
To come by those situations, it is considered more important to deliver a stable product than a product that is quicker in more
theoretical use cases.

Thus, the support for this module is kicked from the standard cache frontend. In case igbinary still gives significant boost for
specialized specific instances, an admin can still configure a VariableFrontend that uses this serializer.


Related issues 1 (0 open1 closed)

Related to TYPO3 Core - Task #87959: Bring back igbinary supportRejected2019-03-20

Actions
Actions

Also available in: Atom PDF