Subject Re: [firebird-support] Re: Error code -901 'conv_out_blob_materialized.isc_open_blob2: BLOB not found'
Author Aldo Caruso
Svein,

Thanks for you answer. Following your advice I'll change the mode
from READ ONLY + READ COMMITTED to READ ONLY of those read only
transactions which can collide with other transactions that delete or
update records, and minimize the time they last to avoid server
performance penalties.

Aldo Caruso

El 15/01/11 17:52, Svein Erling escribió:
>
> > Ann,
> >You were right. I checked my code and discovered a possibility of
> > concurrent record deletion.
> >
> >So the solution would be to start a READ_ONLY transaction instead
> >of a READ_ONLY + READ_COMMITTED.
> >The reason for which I used that mode is because I read somewhere
> >(perhaps in Helen Borrie's book) that when you are planning only
> >to read records it is more efficient to start a transaction in
> >READ_ONLY + READ_COMMITTED mode.
> >
> >Is there any efficiency loss, or some penalty, if you open a
> >transaction in READ_ONLY mode instead of READ_ONLY + READ_COMMITTED ?
>
> READ ONLY + READ COMMITTED doesn't block garbage collection. That's
> the reason for your error, but also the bonus of using that
> combination (blocking garbage collection means that the server has to
> keep old record versions when changing something).
>
> If it is a reasonably short transaction, then there's probably not
> much of a penalty in using a different combination, if it is an
> extremely long-running transaction on a very active system that has
> lots of updates and deletes, then it can make the system very slow
> (though the speed will probably return once the transaction terminates).
>
> Set
>
>


[Non-text portions of this message have been removed]