BorlandTalk.com Forum Index BorlandTalk.com
Borland discussion newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Blob not found - interbase + TIB components + datasnap : whe

 
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Databases (InterBase Express)
View previous topic :: View next topic  
Author Message
Janne Timmerbacka
Guest





PostPosted: Sat Jan 20, 2007 9:57 pm    Post subject: Blob not found - interbase + TIB components + datasnap : whe Reply with quote



I changed from dbExpress to IBX and I began to have daily problems with
blob not found! This is really big problem for my customers!!
My server application has one TIBTransaction (InterbaseExpress components
version 7.08)

TIBTransaction
-AutoStopAction = saCommit
-DefaultAction = taCommit
-Transaction isolation mode was not set! I don't know if it has an effect,
since Datasets are exposed to the thin client via the IAppServer
interface, but now it is set to READ COMMITTED

I have two datamodules for datasnap. Second datamodule is for briefcase
mode syncronizing and it contains only one TIBQuery + provider with
poAllowCommandKey option.



Any ideas?
Back to top
Bill Todd
Guest





PostPosted: Sun Jan 21, 2007 5:17 am    Post subject: Re: Blob not found - interbase + TIB components + datasnap : Reply with quote



What version of Interbase?

Have you verified the database with gfix?

What SQL statement causes the error or what dataset method causes the
error?

Which line of code in your app causes the error?

The behavior you describe is not normal so the more detail you can
provide the better.

--
Bill Todd (TeamB)
Back to top
Janne Timmerbacka
Guest





PostPosted: Mon Jan 22, 2007 9:10 am    Post subject: Re: Blob not found - interbase + TIB components + datasnap : Reply with quote



Thank you very much for you answer. See answer below.

On Sun, 21 Jan 2007 01:17:54 +0200, Bill Todd <no (AT) no (DOT) com> wrote:
Quote:
What version of Interbase?

<Janne>The problem occurs at least with 7.1.0.131 (desktop version). This
problem didn't occurr when I was using dbExpress components, but when I
switched to IBX, they becan within few days. I haven't seen this problem
with FireBird 2 so far, but there are also two 7.1 versions running so far
without any problems. Softwares are configurations are identical in every
server.

Quote:
Have you verified the database with gfix?

<Janne>Yes I have. When the problem first occurred there were some errors
that gfix fixed, but could not fix the blob not found error. The next time
there were no error found by gfix, but blob not found error was there. I
"fixed" the blob not found by updating memo field to NULL value.


Quote:
What SQL statement causes the error or what dataset method causes the
error?

<Janne>I don't write any SQL's my self. Everything is handled via datasnap
data dataproviders. I don't know when the problem is created, probably
when client is updating changes for a record via ApplyUpdates. After that
the problem is visible every time the blob field is accessed (SELECT *
.....).


Quote:
Which line of code in your app causes the error?

<Janne>See previous answer.


Quote:
The behavior you describe is not normal so the more detail you can
provide the better.

I'm using TIBQuery component with DataProviders. I create persistent
fields for TIBQuery and the the main unique index is set "ProviderFlags :=
ProviderFlags + [pfInKey];" setting.

TIBQUERY' settings:
UniDirectional = true

TDataProvider's settings:
Options := [poAutoRefresh, poPropogateChanges ];
UpdateMode := upWhereKeyOnly;
AfterUpdateRecord := DoAfterUpdateRecord;

procedure TRODataSnapModule_Mecware.DoAfterUpdateRecord( Sender: TObject;
SourceDS: TDataSet;
DeltaDS:
TCustomClientDataSet; UpdateKind: TUpdateKind );
(* this routine stores a modified date for briefcase syncronization after
record edit *)
..
..
..
if UpdateKind <> ukDelete then
begin
IBQuery.SQL.Text := 'UPDATE '+ TDataSetProvider( Sender ).Name +
' SET ZXC_MODIFIED =
'''+FormatDateTime( 'dd/mm/yyyy', Date, iFormatSettings )+''' WHERE
'+iBuffer+' = :ID';
IBQuery.Params[ 0 ].Value := DeltaDS.FieldByName( iBuffer ).OldValue;
IBQuery.ExecSQL;
..
..
..

I really hope this information helps
Janne
Back to top
Bill Todd
Guest





PostPosted: Mon Jan 22, 2007 8:31 pm    Post subject: Re: Blob not found - interbase + TIB components + datasnap : Reply with quote

Do you have forced writes enabled?

--
Bill Todd (TeamB)
Back to top
Janne Timmerbacka
Guest





PostPosted: Tue Jan 23, 2007 10:50 pm    Post subject: Re: Blob not found - interbase + TIB components + datasnap : Reply with quote

I haven't heard about Forced writes before and it is disabled for all
databases. After some googling it seems it shoud be enabled?
This problem occur on computers that are somewhat limited in their
resources (memory, processorload, etc.).

Million thanks you for this
Janne
Back to top
Bill Todd
Guest





PostPosted: Tue Jan 23, 2007 11:11 pm    Post subject: Re: Blob not found - interbase + TIB components + datasnap : Reply with quote

Yes, forced (synchronous) writes should be enabled. If you do not any
abnormal shutdown or crash of InterBase can corrupt the database.

--
Bill Todd (TeamB)
Back to top
Janne Timmerbacka
Guest





PostPosted: Wed Jan 31, 2007 9:11 am    Post subject: Re: Blob not found - interbase + TIB components + datasnap : Reply with quote

So far so good. No Blob not found errors so far!

Million thanks
Janne

On Tue, 23 Jan 2007 19:11:57 +0200, Bill Todd <no (AT) no (DOT) com> wrote:
Quote:
Yes, forced (synchronous) writes should be enabled. If you do not any
abnormal shutdown or crash of InterBase can corrupt the database.
Back to top
Display posts from previous:   
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Databases (InterBase Express) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.