New behavior for implicit transactions
--------------------------------------
Key: DNET-483
URL: http://tracker.firebirdsql.org/browse/DNET-483
Project: .NET Data provider
Issue Type: Improvement
Components: ADO.NET Provider
Affects Versions: 3.0.2.0
Reporter: F.D.Castel
Assignee: Jiri Cincura
Priority: Minor
In the current implementation implicit transactions are being commited after
each command execution (and restarted again on the next one). This is not the
ideal since it causes a lot of overhead in Firebird.
Of course, with Firebird, the best practice IS to use explicit transactions.
So, at first look, this is not a big problem.
However, in db-agnostic scenarios like ORMs the code is often NOT aware of this
and expect to use DbCommands without transactions. So, in this case, they are
taking a lot of time and server resources.
E.g.: It took me about 20 minutes to reverse engineer some moderately sized
(400 tables) Firebird database into Entity Framework. At first I though it was
EF fault, but after seeing the performance problems described in DNET-280 i did
realize that was actually the provider fault.
Given all that, I propose to change the current behavior from "one commit after
each execute" to "one commit after FbCommand disposal" when using implicit
transactions. This could bring some breaks in compatibility, but it will bring
the performance near to levels similar to the other providers.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_123012
_______________________________________________
Firebird-net-provider mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider