History log of /packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
09562b6c3a420ded0d02b9bd2290de2dbab9e304 18-Oct-2010 Vasu Nori <vnori@google.com> bug:3097939 trigger on a table without good index = slow contacts app

added index on a table without which the contacts app trigger is causing
N**2 linear scans of the contacts table. the bigger the contacts
table size (= N), the worse the prlblem is.

Change-Id: I5124b3b43d929ccaca3c4f4261c16b0ee5f02d61
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
093b6446d0c63b8d725324ea41369b76ace153df 14-Oct-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing the trigger for aggregated presence.

Aggregated presence was not updated properly
when presence was changed to NULL.

Added a test that covers the specific situation.

Bug: 3069107
Change-Id: I52396db7c9006e9f18ec6b7c51b22ba09c0ae480
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
cfdc0773948fb9788f31495eb876fae3a069eb3a 13-Oct-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing the "duplication" of contacts

This bug was a regression caused by
CL I413231af

When the aggregator decided that it did not
need to aggregate a raw contact despite an
existing match, it would create a duplicate
contact for that raw contact. Fortunately
those "duplicate" contacts are easy to identify
and remove.

Bug: 3091731

Change-Id: Ifef2c212c1ec8d431a0aa2eeb6f34f9e30345194
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
94c6c5a4a2666efc9236237b5650c73d576e8a61 08-Sep-2010 Dmitri Plotnikov <dplotnikov@google.com> Rebuilding name lookup for gingerbread

Bug: 2945979
Change-Id: Ibea10ce80023d3f2fa87fe76c5e41fbba9be6c87
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
aabcd1d34a71ad06ee0a9395331540484f1ceb17 15-Jul-2010 Vasu Nori <vnori@google.com> add chat_mode to presence_db tables: presence, aggregate_presence

Change-Id: I62fc49669217a6136e31164713dc25a5296721ef
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
c085b3eeebf13ebdfb197444747354a1d6eced2b 04-Jun-2010 Jeff Hamilton <jham@android.com> Avoid long running upgrade work on the main thread

Pre-froyo devices didn't use the shared
preferences to track the locale, so they will
always return null for the "providerLocale" even
if the database has thousands of contacts present
so it's not safe to run the setLocale() work from
the main thread.

Report locale change time in uptimeMillis()
so the report is correct across clock changes.

Bug: 2722569
Change-Id: I493596d657f5e02fca8174d998da1fae1115728d
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
7109133e650b0b1a69690bda620e64893c027d95 26-May-2010 Jeff Hamilton <jham@android.com> Add a PRE_BOOT_COMPLETED receiver.

It runs the first time after an OTA and either creates
the database or runs the upgrade path on it. This may
take a significatn amount of time so it's done before
the boot animation completes.

Bug: 2713849
Change-Id: I07f2c22a1462e6923cb7b060d561e7fb41a6e82d
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
758a7562d72b0a6ed336beac508eedf7b369fa20 24-May-2010 Dmitri Plotnikov <dplotnikov@google.com> Cleaning up the contacts DB during upgrade to version 203

Bug: 2709359
Change-Id: I3912e935aba3b5ff40347616843e8caffccacead
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
ee0e6b105832366143e4ddb30beb5bb0e5c81ec5 09-Apr-2010 Bai Tao <michaelbai@google.com> 1. Rebuild locale related RowHandler when locale was changed
2. Don't save adjusted full name style into DB.

Bug: 2582391

Change-Id: I7f6720f59cb452ac19cb7fafac5e704c3d51c2bb
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
69cc3a2b09e2ffb606c6e52a71b604bba526d225 31-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing adding a raw contact to an existing contact.

The issue was that the raw contact was inserted
with the aggregation mode == SUSPENDED, which prevented
it from being aggregated with the other raw contacts
in the same aggregate.

Fixing that by forcing the raw contact out of the
suspended mode when an aggregation exception is added.

Also fixing cosmetic issues missed in the previous CL.

Bug: 2558964
Change-Id: I951db8280e09bd8afd825049320f92c23321ec43
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
33fd566fb6eebdd40a900c0c8a2f6dca894d7829 31-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Cleaning up dangling pointers after account removal.

An aggregated contact points at a raw contact that
contains the contact name. It also points at a photo
row. When we remove an account, we should be fixing
up those pointers. That's exactly what is done
in this CL.

Bug:2557771

Change-Id: I04bc6b23be31ed53b27b48bd2f92eaa1a0838387
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
d6e233be3f6b822510db079d3f7a5f89ca11167c 25-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Making contact visibility update null-tolerant

The visibility update query will no longer crash
if there is a contact without a corresponding raw contact
or vice versa.

This situation should not occur in legitimate use cases,
but database corruption could make this happen.

Bug: 2539296
Change-Id: I3169d84191b02683c86b77697b855d36c3c17aa3
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
afbf2a3343d0f8e7ae7cbfbbec60004ed37caf3f 24-Mar-2010 Daniel Lehmann <lehmannd@google.com> Publish NameRawContactId in ContactData-Query
Bug:2534647

Change-Id: I9b063282b0ec430bd7ce64a946ec2699b0406781
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
de8f19d5cc1ef7d5bd76ede6be888dad37112966 24-Feb-2010 Daisuke Miyakawa <dmiyakawa@google.com> Use PHONEBOOK_COLLATOR toward sort keys, assuming sqlite already has the custom collator.

The phonebook collator is newly intruduced for sorting contact list with what people
expect toward phonebook (the term being used in icu4c, so we don't use "addressbook" or
the other term here). Currently the locale ja will be affected since the collator is
enabled only in that locale.

In the future, we may
- introduce the collation toward other locales (e.g. de has phonebook collator already)
- remove this collator if there's some serious side-effect

So, at this time, do not use this collator toward other columns.

Bug: 2373553
Bug: 2373557
Change-Id: I8a7bec5c2a225a07d4e883d43dfd6fdb2e849047
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
743eac356404195f236ad44379fe9d180beb5bf2 19-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Optimizing the "all accounts" query in ContactsProvider2.

Change-Id: Ia6f8d36956397757c7c246585e37462d09c20337
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
b2e27298ae54ec2215eadf98ecc100aedba98d1a 18-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Storing legacy contact status in the database.

We have run into this situation: in a low storage case
contacts were converted, but then the new database
crashed and was recreated as empty. The import process
was not retried because the provider was thinking
that the upgrade was successful based on a value
stored in shared preferences.

Now the value is stored in the target database thus
forcing the provider to restart the import process
if the database gets corrupted after it's complete.

Also, addressing an inconsistency in the provider that
could lead to compiled SQL statements being detached
from their database.

Bug: 2498528


Change-Id: I77e864fa98a86918d31123f4d3488ae1b1b44bc2
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
60de6f6c3c70e53b603a47b0efc80993353a8368 10-Mar-2010 Daniel Lehmann <lehmannd@google.com> Fix lookup of lookup-keys that are encoded (e.g. Exchange)
Bug:2497276

Change-Id: Icc503f48bdb96eac077db9b1279485d0a0034340
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
51f41be3b905c63ccffcdc82ec58cf5f7ded2c34 09-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Rebuilding contacts sort and lookup keys on locale change.

Bug: 2476633
Change-Id: I25ba9521e7247907d4fa8c0148091d9d67e4e389
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
5086b63bf3de5f26f495b640e85259c0ebf5ca47 09-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing ArrayIndexOutOfBoundsException in contact sync

Bug: 2498058
Change-Id: I3390da8f3a884191d720128aace29b906ba73523
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
f84478382761d74b9fb98c4189de66002c04cef8 24-Feb-2010 Sang-il, Lee <gendoh@google.com> b/2481029 Support searching with lead consonants for Korean names.

Change-Id: I7d60da3300c61571b293e2bda5a3440a8a35d16c
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
08768a0f3434130fa46379c1bbfec93a19094939 06-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Making two changes: extracting actual address from an RFC 822 address and making matching case-insensitive.

Bug: 2254140
Change-Id: I9827f5646664fc2b744c01cc00bd05617ac06fb6
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
d806946b6561dca3f34ded156c6ee89a5113996e 05-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Preventing Chinese shorthand keys from being inserted for non-Chinese contacts.

Bug: 2488839
Change-Id: I0999284fb2eb651af7c3cb00d3f991ab157a3b28
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
fa4a38c9d54f3e3aad4674867bb1250f450c0b95 04-Mar-2010 Dmitri Plotnikov <dplotnikov@google.com> Making exceptions more verbose in ContactsProvider2

Change-Id: I32f7d5d4a4bbd8468ac174d5c0cb4f6521806272
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
04b7ce026c73077d9d982742bc662ea4b3ac74e7 27-Feb-2010 Dmitri Plotnikov <dplotnikov@google.com> Rebuilding contact name lookup during an upgrade from Eclair.

Bug: 2476275
Change-Id: Icda3e0d57ba053978fc0bc8c7e961db2b8b5a69c
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
b06484032125877d1a89785a1a912ca58c12d448 26-Feb-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing contact lookup by email or nickname

Bug: 2472887
Change-Id: I7010292dd1f189ae0fc18340ebc263664e1f15f8
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
916f2d7104bfba857412a66b40ed60fea6546222 25-Feb-2010 Dmitri Plotnikov <dplotnikov@google.com> Adding support for contact search snippets

Bug: 2447965

Change-Id: Id531ca694173751392961510e1207215113b323d
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
6c0d1eb7a960d7f8c4a42a9e0ae10487654f5f7e 19-Feb-2010 Paul Westbrook <pwestbro@google.com> Fixed a bug that was causing
the Gmail unit tests to fail

It looks like a trigger was left in the contacts provider to
update the number of times contacted, even though that the
code has been added in ContactsProvider2.updateContactOptions.

Without this fix, the number of times contacted was being
updated twice in the raw_contacts table
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
34469970fb04b9b188b5430f592b0c956a6ea2aa 06-Feb-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing contacts.db version.

Change-Id: Ice638d7b66f673db4c9200bf5d2299aa1ab79c21
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
31168f49a3da9b9a9d5346f3d6a8098b76179c9c 06-Feb-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing contact lookup by company name and title

Bug: 1360100
Change-Id: Ic897ee1cb9e1c11c858b85b4c0c1d364fabccaad
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
4cd13c4266d8e476e1a49c4b6bcd5b18c33d0de3 21-Jan-2010 Bai Tao <michaelbai@google.com> a. Fix the issue that the FullNameStyle is not updated when user edits the contact or the contacts being synced.
b. Add Chinese sort and search.
c. Adds a CJK check for each contact at runtime. per discussion with component owner, will tune performance later after Korean and Japanese features are added.
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
8be93f4d062ad3919ba48245dd147a49715db82d 21-Jan-2010 Dmitri Plotnikov <dplotnikov@google.com> Optimizing the Contacts Display Setting screen.

Summary:
Given an account with 5020 contacts,
Before this optimization it would take roughly 10sec to
change visibility of either 5000 of them or 20 of them.
After the optimization, changing visibility of 5000 contact
still takes roughly the same time, but changing visiblity
of 20 contacts takes 1.5 sec.

There is another optimization that can be done (mentioned in the
CL that reduces the cost for 5000 contacts from 10sec to
about 3.5sec. That's a bit more involved and a TODO for later.


Change-Id: Iee8f251fdcab50a26b6b02131c0d23fb84aabd46
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
ea509f383588d8810dee2e265e51c0ccb2ec225a 21-Jan-2010 Dmitri Plotnikov <dplotnikov@google.com> am fdbc8f37: am f4a3b7e5: Solving deadlock in ContactProvider2

Merge commit 'fdbc8f3785a4c097a086b2dcfbfcb2d1188cb331'

* commit 'fdbc8f3785a4c097a086b2dcfbfcb2d1188cb331':
Solving deadlock in ContactProvider2
f01c876a92b9c950a0450ed8b706ac5eb2c9b660 20-Jan-2010 Dmitri Plotnikov <dplotnikov@google.com> Support for the RawContacts.NAME_VERIFIED field.

Bug: 2164422
Change-Id: I144819b04bbdb506d9e582de490fd3aa42cb0682
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
f4a3b7e523e36679b68edd2af632e26648758ff2 15-Jan-2010 Dmitri Plotnikov <dplotnikov@google.com> Solving deadlock in ContactProvider2

These two threads are deadlocked.

There are two locks involved: database lock (marked with D below and
the object lock on ContactsDatabaseHelper marked with H)

"Binder Thread #2" prio=5 tid=13 MONITOR
| group="main" sCount=1 dsCount=0 s=N obj=0x44bee478 self=0x1205f8
| sysTid=1439 nice=0 sched=0/0 cgrp=default handle=1201736
H at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:~149)
at com.android.providers.contacts.ContactsDatabaseHelper.getMimeTypeId(ContactsDatabaseHelper.java:1512)
at com.android.providers.contacts.ContactsDatabaseHelper.updateAllVisible(ContactsDatabaseHelper.java:1554)
at com.android.providers.contacts.ContactsProvider2.beforeTransactionCommit(ContactsProvider2.java:1989)
at com.android.providers.contacts.SQLiteContentProvider.onCommit(SQLiteContentProvider.java:216)
at android.database.sqlite.SQLiteDatabase.endTransaction(SQLiteDatabase.java:494)
D at com.android.providers.contacts.SQLiteContentProvider.insert(SQLiteContentProvider.java:96)
at com.android.providers.contacts.ContactsProvider2.insert(ContactsProvider2.java:1941)
at android.content.ContentProvider$Transport.insert(ContentProvider.java:150)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:140)
at android.os.Binder.execTransact(Binder.java:287)
at dalvik.system.NativeStart.run(Native Method)

"Binder Thread #1" prio=5 tid=11 WAIT
| group="main" sCount=1 dsCount=0 s=N obj=0x44bea248 self=0x125480
| sysTid=1438 nice=0 sched=0/0 cgrp=default handle=1145184
at java.lang.Object.wait(Native Method)
- waiting on <0x5319d0> (a java.lang.VMThread)
at java.lang.Thread.parkFor(Thread.java:1535)
at java.lang.LangAccessImpl.parkFor(LangAccessImpl.java:48)
at sun.misc.Unsafe.park(Unsafe.java:317)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:131)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:790)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:823)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1153)
at java.util.concurrent.locks.ReentrantLock$FairSync.lock(ReentrantLock.java:200)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:261)
D at android.database.sqlite.SQLiteDatabase.lock(SQLiteDatabase.java:305)
at android.database.sqlite.SQLiteStatement.simpleQueryForLong(SQLiteStatement.java:116)
H at com.android.providers.contacts.ContactsDatabaseHelper.getCachedId(ContactsDatabaseHelper.java:1478)
at com.android.providers.contacts.ContactsDatabaseHelper.getMimeTypeId(ContactsDatabaseHelper.java:1513)
at com.android.providers.contacts.ContactsProvider2.query(ContactsProvider2.java:3765)
at android.content.ContentProvider$Transport.bulkQuery(ContentProvider.java:117)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:98)
at android.os.Binder.execTransact(Binder.java:287)
at dalvik.system.NativeStart.run(Native Method)

Removing synchronization from the getCachedId method is benign. Worst case
some value would be read from the database twice - no biggie.

Bug: 2370192
Change-Id: Ia6606d5bf617a8d52daaa1e63f57aeeba6dd0437
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
7cf157b1d04ec54e981012fc0dfa982c9e541a10 14-Jan-2010 Vasu Nori <vnori@google.com> don't set max cachesize anylonger. it is managed by SQLiteDatabase.

max cachesize is now automatically managed by SQLiteDtabase. and there
is no longer the API call used by ContactsDatabaseHelper to set the max
cachesize.
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
bcbd6a5cdd2d1aa6531c592428dc20e0282486c3 06-Jan-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing upgrade logic to contacts.db v.205

The problem was caused by unsynched deleted raw contacts. These
raw contacts don't have a contact_id, which was the cause
of the exception during the upgrage.

Bug: 2338000
Change-Id: I04630bee76edc7ba70324afa88e9dcae9aa99512
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
08e50780099971e8927b258ef2ae93d44f98668c 05-Jan-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing Contacts DB upgrade logic

We would try to create views and triggers before the fields they
reference got added.

Bug: 2353082

Change-Id: I90eb0559cb1a1838e4ad680e4180af57c6254797
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
2d2ec88b7af615b2f05e987da45425be9cace1ba 23-Dec-2009 Tom O'Neill <tomo@google.com> Contacts provider uses LOOKUP_KEY for search result IDs

The lookup key is more stable against merges, etc. than the contact ID,
so we are switching to that for the ID values used in search results.

Bug: 2294798
Change-Id: I09e03212828ec473b69968eb00d490785e15edbe
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
5dd6d5d4acb93adc05f1fde904080787f2397f51 21-Dec-2009 Dmitri Plotnikov <dplotnikov@google.com> Resubmit: Adding support for new Contacts columns for names and sorting

This is in preparation for fixing bugs:
Bug: 2075641
Bug: 2021660
Bug: 2164422
Bug: 2267198

Change-Id: I7696abe8c8fd17d8854632cc8e818b9e4d2e643c
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
bca1c8b44f99528fc123d5547723e44771e8e934 21-Dec-2009 Mike Lockwood <lockwood@android.com> Revert "Merge change Ief95261a"

This reverts commit 003009d47e893df100d4020c708296b23c03d28f, reversing
changes made to 5b3b3ec368625c07a2c94d2199a75099d4d9b8a9.
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
b0812f94fa50c54d06978cdd65651a487c717dff 19-Dec-2009 Dmitri Plotnikov <dplotnikov@google.com> Adding support for new Contacts columns for names and sorting

This is in preparation for fixing bugs:
Bug: 2075641
Bug: 2021660
Bug: 2164422
Bug: 2267198

Change-Id: Ief95261a0f4e2c78b216a842cad47f42ef2935c2
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
9b1bd62417ef1764829398a61c3d5df93a924106 10-Dec-2009 Vasu Nori <vnori@google.com> drop a couple of triggers on contacts tables and move them to code.

the triggers in question are the ones that update times_contacted column in
contacts, raw_contacts tables. these triggers had to be rewritten to make
them work woth sqlite 3.6.20 (current version of sqlite in android is 3.5.9).
so, instead of rewriting them, taking this opportunity to moving them to code.
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
4a318ba1f6aff725e99b4a141fd4c3dc8a112b7a 03-Dec-2009 Dmitri Plotnikov <dplotnikov@google.com> Getting rid of some dead code

Change-Id: I5f14b939976d4385a2410e8b01ed05bdba271e1c
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
fada1f08e7ffc8012bf2175f61f3ef3270eba9ec 02-Dec-2009 Dmitri Plotnikov <dplotnikov@google.com> Adding a new column to Contacts: NAME_RAW_CONTACT_ID

This is in preparation for fixing bugs:
http://b/2075641
http://b/2021660
http://b/2164422
http://b/2267198
and merge with eclair-china CLs having to do with sorting using pinyin names.

Change-Id: Ifa5b442e9230a8f4fe07334c394a775f18c09218
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
7f61664c2b587e27f52edcb9a8b91986154ec637 26-Nov-2009 Vasu Nori <vnori@google.com> change BEFORE triggers to AFTER triggers - to make them work with sqlite 3.6.20 & beyond
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
9e7bf1b00c1bac90510cef7776224e0fd3d8908a 21-Nov-2009 Vasu Nori <vnori@google.com> Setup ContactsProvider with compiled-sql statement cache.
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
71037c010a0b7c882284fc1ed8584a378d926b83 06-Nov-2009 Dmitri Plotnikov <dplotnikov@google.com> Fixing database versioning broken for a brief time in CL 32247

Change-Id: Ia34f0ca9dbc9ae25f7a817031cdf01b5ec6a109d
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
3410a80f4aafe5685da61c217808d2bf21d55dfc 06-Nov-2009 Dmitri Plotnikov <dplotnikov@google.com> resolved conflicts for merge of 1c8e40c1 to eclair-mr2

Change-Id: I5c8e9e76c79a5c70d214bc0b28360c41c07e7b85
1c8e40c18f92722b9bec6e8ce2e345a9828efa16 06-Nov-2009 Dmitri Plotnikov <dplotnikov@google.com> Fixing legacy contacts API breakage uncovered by CTS tests

Bug: http://b/2236480
Change-Id: I653a0c0c012f7f125e75e5436cdf66e31402444c
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
e2d20aa1ab5de52ee4a4f5ba3cffcc1166a0b44f 04-Nov-2009 Jeff Sharkey <jsharkey@android.com> resolved conflicts for merge of bf6a7e4d to eclair-mr2
bf6a7e4dece49ba4e7cda17f7ed9250aeb82f731 03-Nov-2009 Jeff Sharkey <jsharkey@android.com> Expose IS_RESTRICTED field through queryEntities() views.

Part of fixing http://b/2223256
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
36045476d2cc7c9c2f985307e87cb6bbc4cfe434 19-Oct-2009 Dmitri Plotnikov <dplotnikov@google.com> ContactsProvider2 optimization: performing phone matching entirely in the database

In order to perform phone number matching efficiently, we now store the minimum caller ID
digits in a new column in the phone_lookup table.

Bug: http://b/2148602

Change-Id: I2f61f79212e296fde92c35768047f11f997903d4
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
47ab23770b9f010a5e5277cda68267fe0613a1cc 13-Oct-2009 Dmitri Plotnikov <dplotnikov@google.com> [Issue 2185274] Optimizing queries used by Google Voice

Change-Id: If9a8aee57f3d344f98ddc1462c34113b2194241f
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
fda634f3eeff6aed8e8dddca92fc07aa44befedd 13-Oct-2009 Dmitri Plotnikov <dplotnikov@google.com> [Issue 2183494] Deleting status updates when a contacts account is removed

Change-Id: Ia9e86786ed11b3fca60b274edc6495b77838bc46
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
a0e72d9b20207ec244f92ace2917932990f2bc8b 06-Oct-2009 Dmitri Plotnikov <dplotnikov@google.com> [Issue 2134623] Optimizing the view_data view, which was doing a full scan of the data table.

Also,
[Issue 2168777] Making sure QuickConnect header links to a visible contact (if available)


Change-Id: I0baab1d532ced7f3ac78ea80ab7700850cacbfa1
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
46b7bfa3728bf878d1a9dac9fea35fa629975e1b 05-Oct-2009 Fred Quintana <fredq@google.com> - create a Uri for and expose the contacts entities uri
- change the EntityIterator to use that Uri
- fix the column naming in the entities view
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
b5a3163481794babda78716e576e35818de0cc03 04-Oct-2009 Dianne Hackborn <hackbod@google.com> Work on issue #2163789: Way too much logging

Dr.No from mcleron.

Change-Id: I070c01e01a08bfe6203302c98cb37fbfd1cb82a5
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
3296d3469bce0041a6cefc44d0486a2a7d0c9f82 30-Sep-2009 Jeff Sharkey <jsharkey@android.com> Offer separate social projection when requesting data rows.

Part of fixing http://b/2126683
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
0f5116227592cb8e724542c598daffa383964679 01-Oct-2009 Dmitri Plotnikov <dplotnikov@google.com> Making contacts provider tests run again

Change-Id: Ie85b0dd312368bf04e2343471265c51437dea6f1
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
f80d9ab92d69e579edce069406f2c1b3280e58d3 01-Oct-2009 Fred Quintana <fredq@google.com> use Events for birthdays
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
d91272b48f97243533c6580981e12a4847b5783f 30-Sep-2009 Jeff Hamilton <jham@android.com> Read the unrestricted pacakages list from XML.

Change-Id: I9af814b8bb1b95051a0371d1e3d3769c052ffd95
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
763100dcfabb368e72f25d24fe181c352bdb66d6 29-Sep-2009 Evan Millar <emillar@google.com> Read query parameter REQUESTING_PACKAGE_PARAM_KEY to determine whether to restrict data.

The requesting package is compared against a white list of packages that
have permission to see restricted data.

Change-Id: I4fcf19f99be68998f6e5b12e2d32b9fe56de68ec
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java
b38ed2c5ffeb20efc677b4a9229db4a00603aa8d 29-Sep-2009 Dmitri Plotnikov <dplotnikov@google.com> Renaming OpenHelper to ContactsDatabaseHelper

Change-Id: Iccdf1ebcd8a3ab430941c957f712bb9e7dd2706c
/packages/providers/ContactsProvider/src/com/android/providers/contacts/ContactsDatabaseHelper.java