BUG #13884: array_to_json() works incorrectly for non-0-based arrays
| От | xtracoder@gmail.com |
|---|---|
| Тема | BUG #13884: array_to_json() works incorrectly for non-0-based arrays |
| Дата | |
| Msg-id | 20160124104702.2537.84835@wrigleys.postgresql.org обсуждение исходный текст |
| Ответы |
Re: BUG #13884: array_to_json() works incorrectly for
non-0-based arrays
|
| Список | pgsql-bugs |
The following bug has been logged on the website:
Bug reference: 13884
Logged by: xtracoder
Email address: xtracoder@gmail.com
PostgreSQL version: 9.5.0
Operating system: Windows
Description:
When postgres array has no elements at the beginning, array_to_json()
generates json array starting at the first initialized value
Steps to reproduce
- - - - - - - - - - - - - - - - - - - - - - - -
DO $$
DECLARE
arr real[];
jsarr jsonb;
arr2 real[];
BEGIN
arr[3] = 1.1;
arr[4] = 1.1;
raise notice 'arr = %', arr;
jsarr = array_to_json(arr);
raise notice 'arr = %', jsarr;
arr[0] = 1.1;
raise notice 'arr = %', arr;
jsarr = array_to_json(arr);
raise notice 'arr = %', jsarr;
END $$
Actual result
- - - - - - - - - - - - - - - - - - - - - - - -
1. NOTICE: arr = [3:4]={1.1,1.1}
2. NOTICE: arr = [1.1, 1.1]
3. NOTICE: arr = [0:4]={1.1,NULL,NULL,1.1,1.1}
4. NOTICE: arr = [1.1, null, null, 1.1, 1.1]
Expected result
- - - - - - - - - - - - - - - - - - - - - - - -
2. NOTICE: arr = [null, null, null, 1.1, 1.1]
В списке pgsql-bugs по дате отправления: