I made one more stab and narrowed down the mallocs to this call: Count: 119,133 = 'sqlite3Parser_lt_YYNSTATEpYYNRULE(12) sqlite3Parser(11) sqlite3RunParser(10) sqlite3Prepare(9) sqlite3_prepare(8) sqlite3_exec_inner_loop_invoke_callback(7) sqlite3_exec_outer_while(6) sqlite3_exec(5) sqlite3Parser_lt_YYNSTATEpYYNRULE(4) sqlite3Parser(3) sqlite3RunParser(2) sqlite3Prepare(1) sqlite3_step(0)'
/**CS_ID**/ fenestra_sqlite3_push(csid_sqlite3Parser_lt_YYNSTATEpYYNRULE); yy_reduce(yypParser,yyact-YYNSTATE); /**CS_ID**/ fenestra_sqlite3_pop(csid_sqlite3Parser_lt_YYNSTATEpYYNRULE); I started looking at yy_reduce, but it looks machine generated. If you give me some direction I'll see if I can narrow it down further. On Wed, Jan 18, 2012 at 4:02 PM, John Elrick <john.elr...@fenestra.com>wrote: > Whatever is happening, it appears I can only reproduce it under these > circumstances. I'll continue digging into the procedure tomorrow to see if > I can narrow down where this is coming from. > > > On Wed, Jan 18, 2012 at 3:54 PM, John Elrick <john.elr...@fenestra.com>wrote: > >> FYI, I traced the number of calls to sqlite3ResetInternalSchema() on a >> smaller set of data. It appears that it isn't the culprit. >> >> Total mallocs: 148,156 >> Total calls to sqlite3ResetInternalSchema(): 63 >> >> >> >> On Wed, Jan 18, 2012 at 3:41 PM, John Elrick <john.elr...@fenestra.com>wrote: >> >>> What else could trigger a call to sqlite3ResetInternalSchema()? I'm >>> getting a clear breakpoint tracing back to such innocuous calls as >>> _sqlite3_step. >>> >>> >>> >>> >>> On Wed, Jan 18, 2012 at 3:31 PM, Richard Hipp <d...@sqlite.org> wrote: >>> >>>> On Wed, Jan 18, 2012 at 3:12 PM, John Elrick <john.elr...@fenestra.com >>>> >wrote: >>>> >>>> > >>>> > Total times _malloc called in test: 69,859,114 >>>> > >>>> > Times calling _malloc: 57,679,282 >>>> > sqlite3Parser(10) >>>> > sqlite3RunParser(9) >>>> > sqlite3Prepare(8) >>>> > sqlite3_prepare(7) >>>> > sqlite3_exec_inner_loop_invoke_callback(6) >>>> > sqlite3_exec_outer_while(5) >>>> > sqlite3_exec(4) >>>> > sqlite3Parser(3) >>>> > sqlite3RunParser(2) >>>> > sqlite3Prepare(1) >>>> > sqlite3_step(0 >>>> > >>>> >>>> It looks like you might be doing something that is forcing SQLite to >>>> constantly reparse the schema. >>>> >>>> * CREATE or DROP statements >>>> * Registering new collating sequences >>>> * Registering new application-defined functions >>>> * ATTACH >>>> * VACUUM >>>> >>>> Maybe set a breakpoint on sqlite3ResetInternalSchema() to find out what >>>> is >>>> making the schema be reparsed so much. >>>> >>>> >>>> > >>>> > Times calling _malloc: 2,775,682 >>>> > sqlite3RunParser(9) >>>> > sqlite3Prepare(8) >>>> > sqlite3_prepare(7) >>>> > sqlite3_exec_inner_loop_invoke_callback(6) >>>> > sqlite3_exec_outer_while(5) >>>> > sqlite3_exec(4) >>>> > sqlite3Parser(3) >>>> > sqlite3RunParser(2) >>>> > sqlite3Prepare(1) >>>> > sqlite3_step(0) >>>> > >>>> > Times calling _malloc: 2,775,682 >>>> > sqlite3Prepare(8) >>>> > sqlite3_prepare(7) >>>> > sqlite3_exec_inner_loop_invoke_callback(6) >>>> > sqlite3_exec_outer_while(5) >>>> > sqlite3_exec(4) >>>> > sqlite3Parser(3) >>>> > sqlite3RunParser(2) >>>> > sqlite3Prepare(1) >>>> > sqlite3_step(0) >>>> > >>>> > Times calling _malloc: 2,092,350 >>>> > sqlite3Parser(3) >>>> > sqlite3RunParser(2) >>>> > sqlite3Prepare(1) >>>> > sqlite3_step(0) >>>> > _______________________________________________ >>>> > sqlite-users mailing list >>>> > sqlite-users@sqlite.org >>>> > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users >>>> > >>>> >>>> >>>> >>>> -- >>>> D. Richard Hipp >>>> d...@sqlite.org >>>> _______________________________________________ >>>> sqlite-users mailing list >>>> sqlite-users@sqlite.org >>>> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users >>>> >>> >>> >>> >>> -- >>> John Elrick >>> Fenestra Technologies >>> 540-868-1377 >>> >>> >> >> >> -- >> John Elrick >> Fenestra Technologies >> 540-868-1377 >> >> > > > -- > John Elrick > Fenestra Technologies > 540-868-1377 > > -- John Elrick Fenestra Technologies 540-868-1377 _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users