Subject Re: [Firebird-Java] 335544329 invalid BLOB ID
Author Jim Starkey
Roman Rokytskyy wrote:

>>Is there any chance the blob was deleted before the insert completed?
>>The scenario I see is if you do an INSERT INTO ... SELECT ...
>>There is a discussion on the Architect list right now about the problem
>>where Blobs are garbage collected while they are still in use.
>>
>>
>
>Then you have answered on your question, didn't you? :)
>
>Yes, this is possible, otherwise nobody would discuss possible fixes without
>changing the ODS to include it in Firebird 2.0. This applies for READ
>COMMITTED isolation level, so switching to REPEATABLE READ should solve this
>problem (though it might not fit your application).
>
>
>
>
No, happily this isn't possible. Blobs are garbage collected when the
parent records are deleted or have versions pruned. And the symptom
would only be visible from a read committed transaction and then only
between the interval of fetching a record and having it deleted and
garbage collected. A transaction containing an insert wouldn't meet any
of these conditions, let alone all of them.


--

Jim Starkey
Netfrastructure, Inc.
978 526-1376