Re: Re: ERROR: XX000: cannot update SecondarySnapshot during aparallel operation

Поиск
Список
Период
Сортировка
От Julien Rouhaud
Тема Re: Re: ERROR: XX000: cannot update SecondarySnapshot during aparallel operation
Дата
Msg-id CAOBaU_ZVGmy77o_9bV3te0PXZ58j2XssWJ3QukNKOSb=Y78N7g@mail.gmail.com
обсуждение исходный текст
Ответ на Re:Re: ERROR: XX000: cannot update SecondarySnapshot during aparallel operation  (fuzk <fuzk80_76@163.com>)
Ответы Re: ERROR: XX000: cannot update SecondarySnapshot during a paralleloperation
Список pgsql-general
On Thu, Mar 14, 2019 at 1:20 PM fuzk <fuzk80_76@163.com> wrote:
>
> Dear Adrian,
>
> My setting is as following.
>
> max_parallel_workers_per_gather=32
>
> I am looking forward to hearing from you.

What version of postgres and what version of postgis are you using ?

> At 2019-03-13 22:31:11, "Adrian Klaver" <adrian.klaver@aklaver.com> wrote:
> >On 3/12/19 7:54 PM, fuzk wrote:
> >> postgres=# \set VERBOSITY verbose
> >> postgres=# SELECT
> >> round(cast(coalesce(sum(ST_length(geography(geometry)))/1000,0) as
> >> NUMERIC),4)||'KM' field_value from had_link;
> >>
> >> ERROR:  XX000: cannot update SecondarySnapshot during a parallel operation
> >> CONTEXT:  SQL statement "SELECT proj4text FROM public.spatial_ref_sys
> >> WHERE srid = 4326 LIMIT 1"
> >> parallel worker
> >> LOCATION:  GetLatestSnapshot, snapmgr.c:387

I'm not familiar at all with geography, but if I read the code
correctly, ST_Length / geography_length will call
spheroid_init_from_srid(), which eventuallly calls GetProj4StringSPI()
that run a query using SPI.  I'm not sure why exactly
GetLatestSnapshot() is called here, or if SPI is really allowed in
parallel workers, but that's the problem here apparently.  I'm adding
Paul as he'll probably have a way better answer than me.


В списке pgsql-general по дате отправления:

Предыдущее
От: Edson Carlos Ericksson Richter
Дата:
Сообщение: Re: Retirar e-mail da lista
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: Retirar e-mail da lista