pgsql: Tighten array dimensionality checks in Python -> SQL array conve
От | Tom Lane |
---|---|
Тема | pgsql: Tighten array dimensionality checks in Python -> SQL array conve |
Дата | |
Msg-id | E1puaRx-000STJ-Eo@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Tighten array dimensionality checks in Python -> SQL array conversion. Like plperl before f47004add, plpython wasn't being sufficiently careful about checking that list-of-list structures represent rectangular arrays, so that it would accept some cases in which different parts of the "array" are nested to different depths. This was exacerbated by Python's weak distinction between sequences and lists, so that in some cases strings could get treated as though they are lists (and burst into individual characters) even though a different ordering of the upper-level list would give a different result. Some of this behavior was unreachable (without risking a crash) before 81eaaf65e. It seems like a good idea to clean it all up in the same releases, rather than shipping a non-crashing but nonetheless visibly buggy behavior in the name of minimal change. Hence, back-patch. Per bug #17912 and further testing by Alexander Lakhin. Discussion: https://postgr.es/m/17912-82ceed78731d9cdc@postgresql.org Branch ------ REL_15_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/b7001c6b6a776ecff38cb1b40ce10a9d190fc1fc Modified Files -------------- src/pl/plpython/expected/plpython_types.out | 65 ++++++++- src/pl/plpython/plpy_typeio.c | 218 ++++++++++++++-------------- src/pl/plpython/sql/plpython_types.sql | 50 ++++++- 3 files changed, 212 insertions(+), 121 deletions(-)
В списке pgsql-committers по дате отправления: