android - Want to know database behavior when Maximum cache size is exceeded -


after extensive use of email database (there more 1000 mails), email app crashed. if come app again mails started deleting automatically.

the error logs obtained below:

e/androidruntime(  417): java.lang.outofmemoryerror e/androidruntime(  417):    @ java.lang.string.<init>(string.java:468) e/androidruntime(  417):    @ java.lang.abstractstringbuilder.tostring(abstractstringbuilder.java:659) e/androidruntime(  417):    @ java.lang.stringbuilder.tostring(stringbuilder.java:664) e/androidruntime(  417):    @ com.android.email.mail.transport.discourselogger.addreceivinglinetobuffer(discourselogger.java:57) e/androidruntime(  417):    @ com.android.email.mail.transport.discourselogger.addreceivedbyte(discourselogger.java:70) e/androidruntime(  417):    @ com.android.email.mail.store.imapresponseparser.readbyte(imapresponseparser.java:71) e/androidruntime(  417):    @ com.android.email.mail.store.imapresponseparser.expect(imapresponseparser.java:332) e/androidruntime(  417):    @ com.android.email.mail.store.imapresponseparser.parsetoken(imapresponseparser.java:199) e/androidruntime(  417):    @ com.android.email.mail.store.imapresponseparser.readtoken(imapresponseparser.java:165) e/androidruntime(  417):    @ com.android.email.mail.store.imapresponseparser.readtokens(imapresponseparser.java:141) e/androidruntime(  417):    @ com.android.email.mail.store.imapresponseparser.readresponse(imapresponseparser.java:92) e/androidruntime(  417):    @ com.android.email.mail.store.imapstore$imapconnection.readresponse(imapstore.java:1491) e/androidruntime(  417):    @ com.android.email.mail.store.imapstore$imapfolder.fetchinternal(imapstore.java:887) e/androidruntime(  417):    @ com.android.email.mail.store.imapstore$imapfolder.fetch(imapstore.java:810) e/androidruntime(  417):    @ com.android.email.messagingcontroller.synchronizemailboxgeneric(messagingcontroller.java:898) e/androidruntime(  417):    @ com.android.email.messagingcontroller.synchronizemailboxsynchronous(messagingcontroller.java:396) e/androidruntime(  417):    @ com.android.email.messagingcontroller.access$2(messagingcontroller.java:384) e/androidruntime(  417):    @ com.android.email.messagingcontroller$2.run(messagingcontroller.java:372) e/androidruntime(  417):    @ com.android.email.messagingcontroller.run(messagingcontroller.java:171) e/androidruntime(  417):    @ java.lang.thread.run(thread.java:1096) 

w/database( 497): reached max size compiled-sql statement cache database /data/data/com.android.email/databases/emailprovider.db; i.e., no space sql statement in cache: select _id attachment messagekey=996. please change sql statements use '?' bindargs, instead of using actual values

i want know behavior above error.

i mean android if maximum cache size exceeded? if tell implementation done, helpful.

this issue. message says all: "reached max size compiled-sql statement cache database"

basically emaill application using hardcoded values in queries. instead should use prepared statements in order cache prepared statements.

hope helps.


Comments

Popular posts from this blog

c++ - Convert big endian to little endian when reading from a binary file -

C#: Application without a window or taskbar item (background app) that can still use Console.WriteLine() -

unicode - Are email addresses allowed to contain non-alphanumeric characters? -