-
-
Notifications
You must be signed in to change notification settings - Fork 66
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Advantage performance of Fetch/FetchAsync #1121
base: master
Are you sure you want to change the base?
Conversation
Change _rows-Queue from DbValue[] to object[] Store only object[]-Array Use single DbValue[]-Array Advantage: Less object creation, less Garbagecollector, performance increase up to 10%
matching override to gdsstatement version 10
How can i identify the failing test in the test source? |
Not sure what you're asking. But you see the name of failing test(s) and with that you can check the code easily. |
Some tests fails: All tests with northwind fails when i use FB-Server 3.0.10, may be depends on my environment. But when i look at the logs in the attachd checks i find only one error:
|
What is the further procedure now? |
I have checked once more the error from the test (BigArrayTest): |
Could you please modify the |
Are my changes rolled back? |
You should modify this PR, preferably. |
Simplified to ReadRow(), ReadRowAsync()
Simplified to ReadRow(), ReadRowAsync()
Ok, i have updated the Patch-1 now (i was on the wrong patch before). Sorry for my questions. |
Why haven't any of my requests been taken into account? |
I think this is a interesting patch regarding performance. Would like to see it. |
First changes in FbDataReader: Second changes in GdsStatements (concerning garbage and object creation): Complete fork, based on 9.1.0: What do you like to know more specific? |
Now, i have found the tests within the sources and have corrected the ReadObject-Function with adding of DBNull.Value.
Some tests fails because of my current environment with parallel installations of 3 firebird versions.
E.g.: FirebirdSql.Data.Common.IscException : Database is probably already opened by another engine instance in another Windows session
Also i have understand how to use branch in the git.
The most advantage is the less object creation and less GC work during Fetch().
In case of FetchAsync(), which is always slower, the advantage may be less.