[R-sig-DB] rmysql warning and its associated mysql error
Jeffrey Horner
je||@horner @end|ng |rom v@nderb||t@edu
Tue Nov 4 16:59:58 CET 2008
christophe dutang wrote on 11/04/2008 07:07 AM:
> Hi all,
>
> Here are some details about my code:
>
> - I use a mysql server where my whole database is stored,
> - I'm doing a logistic regression with the package biglm
> - my 'data function' just does a SQL request for the selected variables
> and then I read part of it with the function fetch:
>
> MySQLdatafun<-function(reset=FALSE)
> {
> if(reset)
> {
> beginRead <<- 0
> endRead <<- 0
> dbClearResult(resSQL)
> resSQL <<- dbSendQuery(con, SQLSelectExplVar)
> return(NULL)
> }
>
> if(endRead >= lengthData)
> return(NULL)
>
> beginRead<<-endRead+1
> endRead<<-endRead+min(chunksize, lengthData-endRead)
>
> mydata <<- data.frame(fetch(resSQL, n=endRead-beginRead+1),
> stringsAsFactors=TRUE)
> # BTW the last argument 'stringAsFactor' does not seem to work.
>
> for(i in 1:NCOL(mydata))
> if(class(mydata[1,i]) == "character")
> mydata[,i] <<- factor(mydata[,i])
>
> mydata
> }
>
> - what's really strange is the problem occurs when I add some code to
> the biglm package to compute the con/discordant percentage.
What do you mean when you "add some code to the biglm package"?
Also, can you provide a table schema?
Jeff
>
> I can not yet upgrade to 2.8.0 since there is no version of the (d)com
> server for this version of R.
>
> Thanks in advance
>
> Christophe Dutang
>
> 2008/11/3 Jeffrey Horner <jeff.horner using vanderbilt.edu
> <mailto:jeff.horner using vanderbilt.edu>>
>
> christophe dutang wrote on 10/31/2008 03:28 PM:
>
> Hi,
>
> I'm currently experiencing problem with the combination of mysql
> / Rmysql /
> R when reading the result of a 'big' query. If I select only 4
> variables of
> my mysql table, the result dimension has 56972 rows, I read by
> pack of
> 50000, namely the first of 50000 and the second of 6972. In this
> cas I do
> not get any DBI warning telling an error of mysql server. But If
> I read the
> 21 variables of my table, the result dimension is then 56972 x
> 21. In R, the
> first read of 50000 rows is fine but second stops after reading
> 2182 rows...
> and a DBI warning is raised
>
> RS-DBI driver warning: (error while fetching rows)
>
> This problem was raised in 2003, cf.
> https://stat.ethz.ch/pipermail/r-help/2003-April/032708.html
>
> But I found here
> http://www.mysqlperformanceblog.com/2007/07/06/, that "If
> you do not check for error it can look as you've done with
> result set while
> you only processed a portion of it, which can cause rather hard
> to catch
> errors."
>
> Does anyone experience this problem? and know how to solve it?
>
>
> Try upgrading R to 2.8.0. <http://2.8.0.>
>
> Can you provide your code to the list... or pseudo code so that we
> can troubleshoot? Specifically are you calling fetch() or dbApply()?
>
> Jeff
>
>
> Thanks in advance
>
> Christophe Dutang
>
>
> PS : I use R 2.7.2 on windows XP pro with RMySQL_0.6-1 and a
> MySQL community
> server 5.0
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-sig-DB mailing list -- R Special Interest Group
> R-sig-DB using stat.math.ethz.ch <mailto:R-sig-DB using stat.math.ethz.ch>
> https://stat.ethz.ch/mailman/listinfo/r-sig-db
>
>
>
> --
> http://biostat.mc.vanderbilt.edu/JeffreyHorner
>
>
>
>
--
http://biostat.mc.vanderbilt.edu/JeffreyHorner
More information about the R-sig-DB
mailing list