On Thu, 2008-07-10 at 09:46 -0300, Ernesto wrote: > I'm not familiarized with the mono test suite, but this is what I get > when I run make run-test-local in mcs/class/System.Data > > Tests run: 1498 (all pass), Not run: 11, Time: 112,014661 seconds > Are you running trunk? If so, it should read something like: Tests run: 1855 (all pass), Not run: 13 etc...
Other than that patch looks good to me. Thanks, V. Varadhan > Looks ok to me. > > Regards, > Ernesto > > Nagappan A escribió: > > Hello Ernesto, > > > > I appreciate your work :) The value of _dataTableSchema is not being > > used anywhere, though its been filled each time. Good catch ! > > > > Could you please try running the unit test too and make sure it > > doesn't break existing test cases. > > > > Thanks > > Nagappan > > > > 2008/7/8 Ernesto <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>: > > > > > > Hi, I was taking a look at OdbcDataReader.cs and found something > > that got my attention: a call to GetSchemaTable() in the class' > > constructor. > > > > The DataReader is supposed to be a very fast reader for > > forward-only queries, and getting complete schema information on > > every DataReader is a very expensive (and unsolicited) operation. > > The call seems completely unnecesary to me. Only column > > information is necessary. > > > > This patch replaces two calls to GetSchemaTable() for calls to a > > new function GetColumns(). > > It works perfectly in my tests and it's way much faster. Can > > someone please review and comment? > > > > Regards, > > Ernesto > > > > > > Index: OdbcDataReader.cs > > =================================================================== > > --- OdbcDataReader.cs (revision 107477) > > +++ OdbcDataReader.cs (working copy) > > @@ -75,7 +75,7 @@ > > short colcount = 0; > > libodbc.SQLNumResultCols (hstmt, ref colcount); > > cols = new OdbcColumn [colcount]; > > - GetSchemaTable (); > > + GetColumns (); > > } > > > > internal OdbcDataReader (OdbcCommand command, > > CommandBehavior behavior, > > @@ -225,6 +225,13 @@ > > } > > return cols [ordinal]; > > } > > + > > + // Load all column descriptions > > + private void GetColumns () > > + { > > + for(int i = 0; i < cols.Length; i++) > > + GetColumn (i); > > + } > > > > public > > #if NET_2_0 > > @@ -913,7 +920,7 @@ > > libodbc.SQLNumResultCols (hstmt, > > ref colcount); > > cols = new OdbcColumn [colcount]; > > _dataTableSchema = null; // force > > fresh creation > > - GetSchemaTable (); > > + GetColumns (); > > } > > return (ret == OdbcReturn.Success); > > } > > > > > > > > _______________________________________________ > > Mono-devel-list mailing list > > Mono-devel-list@lists.ximian.com > > <mailto:Mono-devel-list@lists.ximian.com> > > http://lists.ximian.com/mailman/listinfo/mono-devel-list > > > > > > > > > > -- > > Linux Desktop (GUI Application) Testing Project - > > http://ldtp.freedesktop.org > > http://nagappanal.blogspot.com > > _______________________________________________ > Mono-devel-list mailing list > Mono-devel-list@lists.ximian.com > http://lists.ximian.com/mailman/listinfo/mono-devel-list _______________________________________________ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list