--- In [email protected], Thomas Steinmaurer <ts@...> wrote:
>
> >>> Hi. In highly concurrent environment, part of an app is using .NET 
> >>> RepeatableRead transaction to read data from few tables.
> >>> I noticed that during these reads, writers to these tables experience 
> >>> major slowdown.
> >>> So question is this:
> >>> Does (Concurrency,ReadWrite) (.NET RepeatableRead) has major impact 
> >>> writers?
> >>
> >> I'm not familiar with the .NET driver ...
> >>
> >> * What does "major slowdown" mean?
> >> * Is repeatable read involved for all transactions or read committed as
> >> well?
> >> * If read committed, are you using REC_VERSION or no record versions?
> >> * Do you use WAIT or NO WAIT at transaction level?
> >> * Do you end up with long running transactions? What does gstat -h and
> >> or the monitoring tables say?
> >> * When committing. Do you use commit retaining or "hard" commits?
> >>
> >> More questions than answers ... ;-)
> >>
> >>
> >> --
> >> With regards,
> >> Thomas Steinmaurer
> >> http://www.upscene.com/
> >>
> >> Professional Tools and Services for Firebird
> >> FB TraceManager, IB LogManager, Database Health Check, Tuning etc.
> >>
> > First thank you for your time.
> > It seems that .NET Repeatable read translates to
> > Concurrency, Write, NoWait
> > Id does not specify RecVersion, so it defaults to something.
> 
> REC_VERSION / NO_REC_VERSION only applies to read committed isolation level.
> 
> > If it defaults to NoRecVersion, then it seems understandable that
> > this transaction possibly waits for concurrent writers to commit, which 
> > would explain slow writes and slow execution of this transaction.
> >
> > I need readonly snapshot of few related tables, so i figure that
> > Concurrency, Read, NoWait, RecVersion would be solution.
> >
> > Any opinoon on this?
> > And again, thanks for your time...
> 
> Make use of read-only transactions, if you can. Even being read-only, 
> read-only long-running repeatable read transactions will block garbage 
> collection, so make sure to not keep them open all day long.
> 
> Read-only / read committed is the less intrusive combination available 
> in Firebird though.
> 
> 
> -- 
> With regards,
> Thomas Steinmaurer
> http://www.upscene.com/
> 
> Professional Tools and Services for Firebird
> FB TraceManager, IB LogManager, Database Health Check, Tuning etc.
>
Thank you.



Reply via email to