Re: using database for queuing operations?

Поиск
Список
Период
Сортировка
От Jeff Amiel
Тема Re: using database for queuing operations?
Дата
Msg-id 414F4162.9080706@istreamimaging.com
обсуждение исходный текст
Ответ на Re: using database for queuing operations?  (Jeff Amiel <jamiel@istreamimaging.com>)
Ответы Re: using database for queuing operations?  (Scott Ribe <scott_ribe@killerbytes.com>)
Re: using database for queuing operations?  (Chris Gamache <cgg007@yahoo.com>)
Список pgsql-general
.....or instead change the logic to:

So you:

1.  select for update, with the criteria outlined
2.  Check the state (again) to see of we had that particular race condition.
3.  If already processed or in processing, somebody else must already be
working on it....go back to step 1
4,  change the state
5.  process the image
6.  delete.
7  go to step 1.



change the state, then process the image....then delete.



Jeff Amiel wrote:

> Although....it wont really solve the race condition issue...
> you can still have a point where 2 processes select the same
> record...one gets the 'for update' lock on it and the other one just
> waits for it...
> Regardless of the 'state', once that lock releases, the second process
> will grab it.
> In my world I have a 'main' process that selects all the records that
> currently meet the criteria I am interested and them 'parse' them out
> to the sub-processes via unique id.
>
> Dont know if this helps....
> Jeff
>
>
>
> Mark Harrison wrote:
>
>> Jeff Amiel wrote:
>>
>>> Add a column to the nameq table designating the 'state' of the image.
>>> Then your logic changes to "select * from nameq where serial =
>>> (select min(serial) from nameq) and state="UNPROCESSED" (or whatever)
>>> So you select for update, change the state, then process the
>>> image....then delete.
>>
>>
>>
>> Thanks Jeff, I think that will work perfectly for me!
>>
>> Cheers,
>> Mark
>>
>
>


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

Предыдущее
От: Jeff Amiel
Дата:
Сообщение: Re: using database for queuing operations?
Следующее
От: jao@geophile.com
Дата:
Сообщение: Any reason not to use inheritance?