Я использую функцию postgres, которая зацикливает другую функцию, которая использует dblink для фиксации обновлений в моей базе данных.
Вот часть из "внутренней" функции:
selectedIds := array(select id from items where id2 is null and id > latestItemId order by id asc limit _limit);
highestItemId := (select max(x) from unnest(selectedIds) x);
updatedItemCount := array_length(selectedIds, 1);
raise notice 'updatedItemCount %', updatedItemCount;
raise notice 'SelectedItemiDs %', selectedIds;
PERFORM dblink_connect('dblink_trans','dbname=notified-local port=5432 user=postgres');
PERFORM dblink('dblink_trans','update items set id2 = id where id = any(' || selectedIds || ')');
PERFORM dblink('dblink_trans','COMMIT;');
PERFORM dblink_disconnect('dblink_trans');
Мое уведомление о повышении для selectedIds выглядит следующим образом: {23,60,65,66,588,968,1049,1198,1236,1356,1358,1359,1360,1364,1365,1366}
, а затем я получаю ошибкув заголовке, когда я пытаюсь сделать обновление dblink.
Ошибка говорит о том, что я должен иметь {в качестве начала моего массива и из того, что я вижу в уведомлении о повышении, это именно то, что у меня есть?