Speed up hex_encode with bytewise lookup

John Naylor <john.naylor@postgresql.org>

Commit: e24d77080b365265f3c854f64e71518622883678
Author: John Naylor <john.naylor@postgresql.org>
Date: 2025-01-17T09:29:25Z
Releases: 18.0
Speed up hex_encode with bytewise lookup

Previously, hex_encode looked up each nibble of the input
separately. We now use a larger lookup table containing the two-byte
encoding of every possible input byte, resulting in a 1/3 reduction
in encoding time.

Reviewed by Tom Lane, Michael Paquier, Nathan Bossart, David Rowley

Discussion: https://postgr.es/m/CANWCAZZvXuJMgqMN4u068Yqa19CEjS31tQKZp_qFFFbgYfaXqQ%40mail.gmail.com

Files

PathChange+/−
src/backend/utils/adt/encode.c modified +24 −3

Discussion