On 11/17/2011 03:22 AM, Faught, Bill wrote:
I have a table of 3M rows.  I add all the rows to the table, then call
CREATE INDEX.

Release 3.7.8 is about 40% slower than the previous release doing the
CREATE INDEX.

Has anyone else experienced this?

3.7.8 builds indexes differently. It uses a merge-sort to
sort all indexed keys and then inserts them into the b-tree
index structure. Which is usually faster than inserting them
directly into the b-tree as 3.7.7 does.

You can get the old behaviour by defining SQLITE_OMIT_MERGE_SORT
when you compile SQLite.

I'm curious as to why this is happening though. Are your rows
in sorted order? i.e. if you do:

  SELECT <indexed-columns> FROM <table> ORDER BY rowid;

Do the values come out in sorted order?

Or, are you able to share the database? Either by uploading it
or emailing it to me?

Dan.













_______________________________________________________
The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose
it to anyone else. If you received it in error please notify the sender
immediately, and then destroy it.

_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to