Re: Review: Fix snapshot taking inconsistencies

Поиск
Список
Период
Сортировка
От Marko Tiikkaja
Тема Re: Review: Fix snapshot taking inconsistencies
Дата
Msg-id 4CA9033A.7090606@cs.helsinki.fi
обсуждение исходный текст
Ответ на Review: Fix snapshot taking inconsistencies  (Steve Singer <ssinger_pg@sympatico.ca>)
Ответы Re: Review: Fix snapshot taking inconsistencies  (Steve Singer <ssinger_pg@sympatico.ca>)
Список pgsql-hackers
On 2010-10-03 5:08 AM +0300, Steve Singer wrote:
> The patch applies against master (a13f12b3a18da0a61571cb134fdecea03a10d6f)
>
>
> However initdb fails with:
>
> FATAL:  return type mismatch in function declared to return record
> DETAIL:  Function's final statement must be SELECT or INSERT/UPDATE/DELETE
> RETURNING.
> CONTEXT:  SQL function "ts_debug"
>
> If I run initdb without the patch applied then apply the patch I can test
> the patch.  However the regression tests won't run with the patch applied
> because they call initdb.

Hmm..  I can't reproduce this.  What platform are you on?

> The patch does not include any regression tests. I don't think we have other
> tests that (can?) test concurrency patterns like this.

Right, we can't, at least not yet.

> Are there any dangers:  Per Marko's comments on the most recent patch:
> "This patch still silently breaks  pg_parse_and_rewrite()..." this still
> seems unresolved.  Marko proposed replacing this with something new for SQL
> functions.  Unfortunately I don't see this as having been followed up on.
>
> I also don't have enough understanding of the code to see exactly how/why it
> was broken or what would be involved in fixing it.

Currently pg_parse_and_rewrite() returns all Query nodes in one huge 
list.  That's not acceptable for this patch since that list is already 
missing the information we need: when should we take a new snapshot?  So 
the patch breaks the API of pg_parse_and_rewrite() to return a list of 
lists instead, but I'm not convinced that's a bright idea since third 
party code might use it, so I suggested adding a new function.  Then 
again, third party code can't use pg_parse_and_rewrite() any way if/when 
the wCTE patch goes in.


Regards,
Marko Tiikkaja


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: english parser in text search: support for multiple words in the same position
Следующее
От: Tom Lane
Дата:
Сообщение: Re: patch: tsearch - some memory diet