Passar matriz de postgres de nó para a função plpgsql

A função plpgsql:

CREATE OR REPLACE FUNCTION testarray (int[]) returns int as $
  DECLARE
    len int;
  BEGIN
    len := array_upper($1);
  return len;
  END
$ language plpgsql;

A matriz node-postgres query + test:

var ta = [1,2,3,4,5];
client.query('SELECT testarray($1)', [ta], function(err, result) {
  console.log('err: ' + err);
  console.log('result: ' + result);
});

Saída do servidor do nó:

err: error: o valor da matriz deve começar com "{" ou informações de dimensão
resultado: indefinido

Eu também tentei converter o parâmetro na consulta do cliente comotestarray($1::int[]) que retornou o mesmo erro.

Eu mudei o argumento da função para(anyarray int) e o erro de saída foi alterado:

err: error: sintaxe de entrada inválida para integer: "1,2,3,4,5"
resultado: indefinido

Bem como algumas outras variações.

Eu procuro a variação que não produz erro e retorna 5.

Eu li sobre oPostgres parse-array issue e essa pergunta stackoverflow em matrizes parametrizadas em postgres de nó:

node-postgres: como executar a consulta "WHERE col IN (<lista de valores dinâmicos>)"?

Mas a resposta não parecia estar lá.

questionAnswers(3)

yourAnswerToTheQuestion