Ошибка должна исходить из инициализации guids_list
.
Как это написано, это будет выглядеть как
{[guid1', 'guid ' containing spaces and quote', 'guid3]}
что явно не то, что вы намереваетесь. Кроме того, как я пытался продемонстрировать, он открыт для SQL-инъекций.
Вы можете использовать что-то вроде
'guids_list character varying[] := ' ||
(SELECT quote_literal(array_agg(DISTINCT guid)) FROM lc) || ';'