adb logcat of Exchange failing on new Haykuro build - G1 Android Development

E/DatabaseUtils( 747): at android.os.Binder.execTransact(Binder.java:28
7)
E/DatabaseUtils( 747): at dalvik.system.NativeStart.run(Native Method)
E/BaseSyncSource( 791): setEnabled(false) 2:Unknown URL content://calendar/easS
yncInfo
V/BaseSyncSource( 791): - setEnabled(true)3
V/MailSyncSource( 791): - saveData()
I/DumpStateReceiver( 60): Added state dump to 2 crashes
V/BaseSyncSource( 791): - setEnabled(false)1
V/BaseSyncSource( 791): > saveData(1)
V/BaseSyncSource( 791): > saveData(1)
E/Database( 112): Error updating LastSyncTime=0 LastSyncErrorCode=0 synckey= En
abled=0 CollID= LastSyncResult=0 using UPDATE easSyncInfo SET LastSyncTime=?, La
stSyncErrorCode=?, synckey=?, Enabled=?, CollID=?, LastSyncResult=?
E/DatabaseUtils( 112): Writing exception to parcel
E/DatabaseUtils( 112): android.database.sqlite.SQLiteException: no such table:
easSyncInfo: , while compiling: UPDATE easSyncInfo SET LastSyncTime=?, LastSyncE
rrorCode=?, synckey=?, Enabled=?, CollID=?, LastSyncResult=?
E/DatabaseUtils( 112): at android.database.sqlite.SQLiteProgram.native_
compile(Native Method)
E/DatabaseUtils( 112): at android.database.sqlite.SQLiteProgram.compile
(SQLiteProgram.java:110)
E/DatabaseUtils( 112): at android.database.sqlite.SQLiteProgram.<init>(
SQLiteProgram.java:59)
E/DatabaseUtils( 112): at android.database.sqlite.SQLiteStatement.<init
>(SQLiteStatement.java:41)
E/DatabaseUtils( 112): at android.database.sqlite.SQLiteDatabase.compil
eStatement(SQLiteDatabase.java:925)
E/DatabaseUtils( 112): at android.database.sqlite.SQLiteDatabase.update
WithOnConflict(SQLiteDatabase.java:1442)
E/DatabaseUtils( 112): at android.database.sqlite.SQLiteDatabase.update
(SQLiteDatabase.java:1387)
E/DatabaseUtils( 112): at com.android.providers.contacts.ContactsProvid
er.updateInternal(ContactsProvider.java:3479)
E/DatabaseUtils( 112): at android.content.AbstractSyncableContentProvid
er.update(AbstractSyncableContentProvider.java:251)
E/DatabaseUtils( 112): at android.content.ContentProvider$Transport.upd
ate(ContentProvider.java:156)
E/DatabaseUtils( 112): at android.content.ContentProviderNative.onTrans
act(ContentProviderNative.java:165)
E/DatabaseUtils( 112): at android.os.Binder.execTransact(Binder.java:28
7)
E/DatabaseUtils( 112): at dalvik.system.NativeStart.run(Native Method)
E/BaseSyncSource( 791): setEnabled(false) 1:no such table: easSyncInfo: , while
compiling: UPDATE easSyncInfo SET LastSyncTime=?, LastSyncErrorCode=?, synckey=
?, Enabled=?, CollID=?, LastSyncResult=?
V/BaseSyncSource( 791): - setEnabled(true)2
V/BaseSyncSource( 791): > saveData(2)
V/BaseSyncSource( 791): > saveData(2)
E/DatabaseUtils( 747): Writing exception to parcel
E/DatabaseUtils( 747): java.lang.IllegalArgumentException: Unknown URL content:
//calendar/easSyncInfo
E/DatabaseUtils( 747): at com.android.providers.calendar.CalendarProvid
er.updateInternal(CalendarProvider.java:3701)
E/DatabaseUtils( 747): at android.content.AbstractSyncableContentProvid
er.update(AbstractSyncableContentProvider.java:251)
E/DatabaseUtils( 747): at android.content.ContentProvider$Transport.upd
ate(ContentProvider.java:156)
E/DatabaseUtils( 747): at android.content.ContentProviderNative.onTrans
act(ContentProviderNative.java:165)
E/DatabaseUtils( 747): at android.os.Binder.execTransact(Binder.java:28
7)
E/DatabaseUtils( 747): at dalvik.system.NativeStart.run(Native Method)
E/BaseSyncSource( 791): setEnabled(true) 2:Unknown URL content://calendar/easSy
ncInfo
V/EAS_AppSvc( 791): > chooseProtocol()
V/EAS_AppSvc( 791): > DSEC()
V/EAS_HTTP( 791): Create a HttpClient with default setting
D/InetAddress( 791): webmail.<mydomain.com>.com: <ip> (family 2, proto 6)
D/dalvikvm( 791): threadid=39 wakeup: interrupted
V/EAS_HTTP( 791): Create a HttpClient with default setting
V/EAS_AppSvc( 791): < DSEC()
V/EAS_AppSvc( 791): < chooseProtocol(), ver = 2.5
I/MailManager( 791): - createAccount()
I/MailManager( 791): - deleteAccount()
V/MailManager( 791): deleteAccount() default_path: /data/data/com.htc.android.m
ail/app_mail_eas
D/dalvikvm( 60): GC freed 11909 objects / 945856 bytes in 410ms
E/MailManager( 791): deleteAccount(): Can't find exchange mail account
I/MailManager( 791): - createAccount_insert_defaultMailbox()
I/DumpStateReceiver( 60): Added state dump to 2 crashes
I/MailManager( 791): - createAccount_insert_account()
D/MailProvider( 791): 03201747 setDefaultAccountById>0
I/DumpStateReceiver( 60): Added state dump to 1 crashes
D/Util ( 791): 03201747 > createBufferFile()
D/Util ( 791): 03201747 bufferFile: /data/data/com.htc.android.mail/bufferFi
le
D/Util ( 791): 03201747 buffer file exist, need not create
D/Util ( 791): 03201747 < createBufferFile()
D/EAS_SyncEngine( 791): < createMailAccount(): true
I/EAS_SyncEngine( 791): > syncMailFolderAndUpdAccount()
V/EAS_SyncEngine( 791): > GFH()
V/EAS_SyncEngine( 791): Folder sync key: 0
D/InetAddress( 791): webmail.<mydomain.com>.com: <ip> (family 2, proto 6)
D/dalvikvm( 791): GC freed 3356 objects / 350168 bytes in 265ms
I/DumpStateReceiver( 60): Added state dump to 2 crashes
E/EAS_SyncEngine( 791): ! error. GFH http statuserror: 403
D/dalvikvm( 791): threadid=19 wakeup: interrupted
V/EAS_HTTP( 791): Create a HttpClient with default setting
V/MailSyncSource( 791): - saveData()
V/EAS_SyncEngine( 791): writeGlobalInfo: 0
W/System.err( 791): com.htc.android.mail.eassvc.core.SyncException: Request For
bidden
W/System.err( 791): at com.htc.android.mail.eassvc.core.SyncManager.getHttpS
tatusError(SyncManager.java:5962)
W/System.err( 791): at com.htc.android.mail.eassvc.core.SyncManager.getFolde
rHierarchy(SyncManager.java:689)
W/System.err( 791): at com.htc.android.mail.eassvc.core.SyncManager.syncMail
FolderAndUpdAccount(SyncManager.java:6056)
W/System.err( 791): at com.htc.android.mail.eassvc.core.SyncManager.createAc
count(SyncManager.java:6163)
W/System.err( 791): at com.htc.android.mail.eassvc.EASAppSvc$MailBlockComman
dHandler.createAccount(EASAppSvc.java:4861)
W/System.err( 791): at com.htc.android.mail.eassvc.EASAppSvc.createAccount(E
ASAppSvc.java:5097)
W/System.err( 791): at com.htc.android.mail.eassvc.EASAppSvc$1.createAccount
(EASAppSvc.java:395)
W/System.err( 791): at com.htc.android.mail.easclient.SynchronizationSetting
$VerifyAccountThread.run(SynchronizationSetting.java:492)
I/WifiService( 60): releasePowerActiveReq set to power_mode_auto
I/LockUtil( 791): - release WifiLock: MAIL_BLK
I/LockUtil( 791): - release PowerLock: MAIL_BLK
I/EAS_AppSvc( 791): > deleteMailAccount()
V/BaseSyncSource( 791): > deleteData()3
V/MailSyncSource( 791): - saveData()
V/BaseSyncSource( 791): < deleteData()
I/MailManager( 791): - deleteAccount()
V/MailManager( 791): deleteAccount() default_path: /data/data/com.htc.android.m
ail/app_mail_eas
D/MailProvider( 791): 03201747 delete>content://mail/accounts/1, null, null
D/MailProvider( 791): 03201747 delete() table: parts whereClause: _account=1
D/MailProvider( 791): 03201747 delete() table: messages whereClause: _account=1
D/MailProvider( 791): 03201747 delete() table: mailboxs whereClause: _account=1
D/MailProvider( 791): 03201747 delete() table: easTracking whereClause: null
D/MailProvider( 791): 03201747 delete() table: easMailboxs whereClause: _accoun
t='-1'
D/MailProvider( 791): 03201747 delete() table: easparts whereClause: _account=1
D/MailProvider( 791): 03201747 delete() table: easmessages whereClause: _accoun
t=1
D/MailProvider( 791): 03201747 delete() table: easMailboxs whereClause: _accoun
t=1
D/MailProvider( 791): 03201747 delete() table: accounts whereClause: _id=1
D/MailProvider( 791): 03201747 match == ACCOUNT_ID>1
I/EAS_AppSvc( 791): < deleteMailAccount()
V/EAS_AppSvc( 791): - setLoginConfig()
D/dalvikvm( 147): GC freed 7446 objects / 414592 bytes in 159ms
D/dalvikvm( 110): GC freed 3080 objects / 153624 bytes in 241ms
D/dalvikvm( 163): GC freed 1669 objects / 97096 bytes in 178ms
D/dalvikvm( 112): GC freed 6716 objects / 573520 bytes in 200ms
D/dalvikvm( 747): GC freed 3326 objects / 262880 bytes in 150ms

someone wanted a logcat - I can provide more info if anyone needs as well. I don't mind working with someone on this.

Can you include a detail or two about your exchange environment. Is it 2003 or 2007?
I had Exchange working on one of the previous builds and then it started failing on an update to a new build and never got it to work after that. I've since moved to the Dude's build as I didn't need exchange so I can't say for sure whether or not it was a build problem or an Exchange server configuration problem.
I will add this though, around the same time it stopped working for me in our Exchange 2003 environment, activesync broke all together. No iPhones worked, nor did Touchdown for me. Touchdown was the most descriptive saying that there was trouble negotiating the security policy (IIRC).
Here's where it gets just plain weird...I have 1 user, who set up touchdown before activesync broke, and it continued to work even after all our companies iPhones and my G1 stopped being able to work.
So, I'm thinking that this may be something more on the server end than the phone end. Especially because of this entry in your log:
E/MailManager( 791): deleteAccount(): Can't find exchange mail account
I don't know much about this kind of thing, but I'm thinking that the phone just checks to see if the server address works, than checks if it can log in, then presents with your sync options (thinking that it should work), and then it fails on sync due to a negotiation problem.
Hope this helps.

killerbeesateme said:
Can you include a detail or two about your exchange environment. Is it 2003 or 2007?
I had Exchange working on one of the previous builds and then it started failing on an update to a new build and never got it to work after that. I've since moved to the Dude's build as I didn't need exchange so I can't say for sure whether or not it was a build problem or an Exchange server configuration problem.
I will add this though, around the same time it stopped working for me in our Exchange 2003 environment, activesync broke all together. No iPhones worked, nor did Touchdown for me. Touchdown was the most descriptive saying that there was trouble negotiating the security policy (IIRC).
Here's where it gets just plain weird...I have 1 user, who set up touchdown before activesync broke, and it continued to work even after all our companies iPhones and my G1 stopped being able to work.
So, I'm thinking that this may be something more on the server end than the phone end. Especially because of this entry in your log:
E/MailManager( 791): deleteAccount(): Can't find exchange mail account
I don't know much about this kind of thing, but I'm thinking that the phone just checks to see if the server address works, than checks if it can log in, then presents with your sync options (thinking that it should work), and then it fails on sync due to a negotiation problem.
Hope this helps.
Click to expand...
Click to collapse
Looking at the logs I'd tend to agree - *however* - moxier works perfectly fine given the exact same criteria (ssl/user/pass/domain/server name/ip/email address) - and I've tried unchecking Calendar/Contacts so that I'm trying to configure *only* mail.
As far as versioning and such goes I believe that we're Exchange 2003 but I'm not sure of all information as I'm not part of my company's IT, I'm a developer, which means I don't ****ing touch servers unless I have to.
edit: I'm just providing info as I can to attempt to help those who really need this to work. I'm using Moxier for my own personal use and I will likely stick with it. If I can help any more ..please let me know.

afflaq said:
Looking at the logs I'd tend to agree - *however* - moxier works perfectly fine given the exact same criteria (ssl/user/pass/domain/server name/ip/email address) - and I've tried unchecking Calendar/Contacts so that I'm trying to configure *only* mail.
As far as versioning and such goes I believe that we're Exchange 2003 but I'm not sure of all information as I'm not part of my company's IT, I'm a developer, which means I don't ****ing touch servers unless I have to.
edit: I'm just providing info as I can to attempt to help those who really need this to work. I'm using Moxier for my own personal use and I will likely stick with it. If I can help any more ..please let me know.
Click to expand...
Click to collapse
I'm in the exact same boat. 2k3 with the exact same credentials that can get Moxier up and running. I know this can work and it runs great in 5.0.2 builds.
Edit: make sure this information makes it to Steve.

Touchdown works fine for me, but not this. 5.0.2 worked fine for me also. Has to be something with this build. Company is on Exchange 2003.

uberingram said:
I'm in the exact same boat. 2k3 with the exact same credentials that can get Moxier up and running. I know this can work and it runs great in 5.0.2 builds.
Edit: make sure this information makes it to Steve.
Click to expand...
Click to collapse
out of curiosity, who the hell is steve? Haykuro?

afflaq said:
out of curiosity, who the hell is steve? Haykuro?
Click to expand...
Click to collapse
Correctamundo.

haykuro originally said (I think) that one of the reasons the new SPL was required was that the HTC apps (like the Mail app) require the extra storage.
I can't get Exchange working, but I'm also one of these people who is not seeing the storage increased to 89MB. It's still at 63MB.
Is it possible these are related?

Exchange 07 here internal sync does not work. Touchdown works, moxier works, and im currently using roadsync untill he gets the bugs ironed out the device is running awesome with overclocker apps and dalvik to sd 89mb free with 54 apps installed.

virtudude said:
haykuro originally said (I think) that one of the reasons the new SPL was required was that the HTC apps (like the Mail app) require the extra storage.
I can't get Exchange working, but I'm also one of these people who is not seeing the storage increased to 89MB. It's still at 63MB.
Is it possible these are related?
Click to expand...
Click to collapse
C:\Documents and Settings\r4w>adb shell
# df
df
/dev: 49352K total, 0K used, 49352K available (block size 4096)
/sqlite_stmt_journals: 4096K total, 8K used, 4088K available (block size 4096)
/system: 92160K total, 80236K used, 11924K available (block size 4096)
/data: 91904K total, 43024K used, 48880K available (block size 4096)
/cache: 30720K total, 1160K used, 29560K available (block size 4096)
/sdcard: 7821312K total, 1539424K used, 6281888K available (block size 32768)
#

It looks like the issue arises with a missing SQLLite table for the account information and exceptions.
I don't think storage space is the issue as HTC sync and exchange work in 50.2H with the old SPL

justanothercrowd said:
It looks like the issue arises with a missing SQLLite table for the account information and exceptions.
I don't think storage space is the issue as HTC sync and exchange work in 50.2H with the old SPL
Click to expand...
Click to collapse
We should be able to bulk out & bulk in those SQL tables then correct?

@afflaq can you give me the command you type to have this info i want to share mine to compare cause don't working too ,

imfloflo said:
@afflaq can you give me the command you type to have this info i want to share mine to compare cause don't working too ,
Click to expand...
Click to collapse
adb logcat

ckrest said:
We should be able to bulk out & bulk in those SQL tables then correct?
Click to expand...
Click to collapse
What would really be helpful would be if someone could post the logcat of a successful exchange account configuration on one of the builds that *DID* work. Then we'd be able to compare a little closer.

Omg bumping because everyone cares about exchange

heres mine:
D/dalvikvm( 163): GC freed 7822 objects / 563880 bytes in 153ms
D/dalvikvm( 163): GC freed 8659 objects / 516448 bytes in 154ms
D/GTalkService( 163): [RosterMgr] roster not modified
D/GTalkService( 163): [OtrMgr] OTR not modified
D/EAS_AppSvc( 2624): - onStart()com.htc.eas.scheduled.sync.action
I/LockUtil( 2624): - acquire PowerLock - PARTIAL_WAKE_LOCK: SCHEDULE
V/EAS_AppSvc( 2624): isBusy() : nothing running
V/EAS_AppSvc( 2624): [scheduler] perform sync
V/EAS_AppSvc( 2624): > doServiceStartSync()
V/EAS_AppSvc( 2624): queueMailSyncByColID(94b38d086e54cf41b77d88dec2d2582e-5f8ee
3,false)
V/EAS_AppSvc( 2624): - isSyncSourceEnabled(): 3, true
V/EAS_AppSvc( 2624): SyncThreadManager.addQueue(3) 1132238144
I/LockUtil( 2624): - acquire PowerLock - PARTIAL_WAKE_LOCK: SYNCHRONIZED
V/EAS_AppSvc( 2624): > MailINCommandHandler: 1
V/EAS_AppSvc( 2624): SyncThreadManager.messageStart(3) 1132238144
V/EAS_AppSvc( 2624): StatusController > syncStart(3)
V/EAS_AppSvc( 2624): isDoSync() : nothing running
V/EAS_AppSvc( 2624): StatusController > icon Start
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,3)
V/EAS_AppSvc( 2624): SyncThreadManager.hasSourceInQueue 3, 1132238144
V/EAS_AppSvc( 2624): SyncThreadManager.checkQueue() Mail
V/BaseSyncSource( 2624): setPause(true,2)
V/BaseSyncSource( 2624): setPause(true,1)
V/BaseSyncSource( 2624): setPause(false,3)
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,3)
V/EAS_AppSvc( 2624): queueDoSync(1, false)
V/EAS_AppSvc( 2624): - isSyncSourceEnabled(): 1, true
V/EAS_AppSvc( 2624): SyncThreadManager.addQueue(1) 1131545616
V/BaseSyncSource( 2624): pause(1)
V/EAS_AppSvc( 2624): SyncThreadManager.hasSourceInQueue 3, 1132238144
V/EAS_AppSvc( 2624): SyncThreadManager.checkQueue() Mail
V/BaseSyncSource( 2624): setPause(true,2)
V/BaseSyncSource( 2624): setPause(true,1)
V/BaseSyncSource( 2624): setPause(false,3)
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,3)
V/EAS_AppSvc( 2624): queueDoSync(2, false)
V/EAS_AppSvc( 2624): - isSyncSourceEnabled(): 2, true
V/EAS_AppSvc( 2624): SyncThreadManager.addQueue(2) 1131709200
V/BaseSyncSource( 2624): pause(2)
V/EAS_AppSvc( 2624): SyncThreadManager.hasSourceInQueue 3, 1132238144
V/EAS_AppSvc( 2624): SyncThreadManager.checkQueue() Mail
V/BaseSyncSource( 2624): setPause(true,2)
V/BaseSyncSource( 2624): setPause(true,1)
V/BaseSyncSource( 2624): setPause(false,3)
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,3)
V/EAS_AppSvc( 2624): < doServiceStartSync()
I/LockUtil( 2624): - release PowerLock: SCHEDULE
V/EAS_AppSvc( 2624): MailCommandHandler: MSG_DO_SYNC
V/EAS_SyncEngine( 2624): > DS() : 3
V/EAS_SyncEngine( 2624): - doSync(): EMail, collId: 94b38d086e54cf41b77d88dec2d2
582e-5f8ee3
I/EAS_SyncEngine( 2624): > syncMailFolderAndUpdAccount()
V/EAS_SyncEngine( 2624): > GFH()
V/EAS_SyncEngine( 2624): Folder sync key: {C0838569-7594-480F-9373-3AB23AB8B731}
1
D/InetAddress( 2624): mail.seacharter.net: 64.182.124.126 (family 2, proto 6)
I/EAS_SyncEngine( 2624): Response new sync key: {C0838569-7594-480F-9373-3AB23AB
8B731}1
D/dalvikvm( 2624): threadid=19 wakeup: interrupted
V/EAS_HTTP( 2624): Create a HttpClient with default setting
V/EAS_SyncEngine( 2624): < GFH()
I/MailSyncSource( 2624): > setFolderEnableSyncDown()
I/MailSyncSource( 2624): < setFolderEnableSyncDown()
I/MailSyncSource( 2624): > setFolderEnableSyncUp()
I/MailSyncSource( 2624): < setFolderEnableSyncUp()
V/MailSyncSource( 2624): - saveData()
V/EAS_SyncEngine( 2624): writeGlobalInfo: {C0838569-7594-480F-9373-3AB23AB8B731}
1
I/EAS_SyncEngine( 2624): < syncMailFolderAndUpdAccount(), return: true
V/MailManager( 2624): - getMeetingResp()
V/MailManager( 2624): - getMoveItemInfo()
I/EAS_SyncEngine( 2624): - syncMail collection name : Inbox collection id :94b38
d086e54cf41b77d88dec2d2582e-5f8ee3
V/EAS_SyncEngine( 2624): add the class and CollectionId tag
D/InetAddress( 2624): mail.seacharter.net: 64.182.124.126 (family 2, proto 6)
D/dalvikvm( 2624): threadid=19 wakeup: interrupted
V/EAS_HTTP( 2624): Create a HttpClient with default setting
V/EAS_SyncEngine( 2624): getItemEstimate(): 0
V/EAS_SyncEngine( 2624): > SEMAIL()
V/EAS_SyncEngine( 2624): SEMAIL() use synckey:{EC10A2BC-9A32-43A5-B819-8C3F6E5
1D6E5}14
D/InetAddress( 2624): mail.seacharter.net: 64.182.124.126 (family 2, proto 6)
V/EAS_SyncEngine( 2624): newSyncKey: {EC10A2BC-9A32-43A5-B819-8C3F6E51D6E5}14
D/dalvikvm( 2624): threadid=19 wakeup: interrupted
V/EAS_HTTP( 2624): Create a HttpClient with default setting
D/MailProvider( 2624): 03201747 update>content://mail/easmessages, _synckey=0, _
mailboxId = '0', null
V/MailSyncSource( 2624): - saveData()
V/EAS_SyncEngine( 2624): < SEMAIL()
V/EAS_SyncEngine( 2624): < DS() true
V/EAS_AppSvc( 2624): Mail(in) unBlockCondition: 0
V/EAS_AppSvc( 2624): SyncThreadManager.messageDone(3) 1132238144
V/MailSyncSource( 2624): - saveData()
V/MailManager( 2624): - updateAccountLastUpdateTime()
E/MailManager( 2624): updateAccountLastUpdateTime(): mnAccountId is null, return
V/MailSyncSource( 2624): endSync() completeRefresh: 1
V/EAS_AppSvc( 2624): StatusController > syncEnd(3)
V/EAS_AppSvc( 2624): isDoSync() : nothing running
V/EAS_AppSvc( 2624): StatusController > icon End
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(CANCEL,0)
E/JOGBALL ( 58): open failed errno: 2
V/EAS_AppSvc( 2624): SyncThreadManager.hasSourceInQueue 1, 1131545616
V/EAS_AppSvc( 2624): SyncThreadManager.checkQueue() Contact
V/BaseSyncSource( 2624): setPause(true,2)
V/BaseSyncSource( 2624): setPause(false,1)
V/EAS_AppSvc( 2624): SyncThreadManager.messageStart(1) 1131545616
V/EAS_AppSvc( 2624): StatusController > syncStart(1)
V/EAS_AppSvc( 2624): isDoSync() : nothing running
V/EAS_AppSvc( 2624): StatusController > icon Start
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,1)
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,1)
V/EAS_AppSvc( 2624): ContactsCommandHandler: MSG_DO_SYNC
V/EAS_SyncEngine( 2624): > DS() : 1
V/EAS_AppSvc( 2624): < MailINCommandHandler: 1
V/EAS_SyncEngine( 2624): > SECON()
E/DatabaseUtils( 120): Writing exception to parcel
E/DatabaseUtils( 120): java.lang.IllegalArgumentException: Unknown URL content:
//contacts/eas_tracking
E/DatabaseUtils( 120): at com.android.providers.contacts.ContactsProvid
er.queryInternal(ContactsProvider.java:1974)
E/DatabaseUtils( 120): at android.content.AbstractSyncableContentProvid
er.query(AbstractSyncableContentProvider.java:359)
E/DatabaseUtils( 120): at android.content.ContentProvider$Transport.bul
kQuery(ContentProvider.java:112)
E/DatabaseUtils( 120): at android.content.ContentProviderNative.onTrans
act(ContentProviderNative.java:97)
E/DatabaseUtils( 120): at android.os.Binder.execTransact(Binder.java:28
7)
E/DatabaseUtils( 120): at dalvik.system.NativeStart.run(Native Method)
E/CheckinService( 58): Can't find package com.htc.dcs.impl
E/CheckinService( 58): Can't find package com.htc.dcs.service.cht
W/System.err( 2624): java.lang.IllegalArgumentException: Unknown URL content://c
ontacts/eas_tracking
W/System.err( 2624): at android.database.DatabaseUtils.readExceptionFromParce
l(DatabaseUtils.java:129)
W/System.err( 2624): at android.database.DatabaseUtils.readExceptionFromParce
l(DatabaseUtils.java:111)
W/System.err( 2624): at android.content.ContentProviderProxy.bulkQuery(Conten
tProviderNative.java:279)
W/System.err( 2624): at android.content.ContentProviderProxy.query(ContentPro
viderNative.java:298)
W/System.err( 2624): at android.content.ContentResolver.query(ContentResolver
.java:149)
W/System.err( 2624): at com.htc.android.mail.eassvc.util.SyncTrackManager.get
DeviceContactChangeList(SyncTrackManager.java:80)
W/System.err( 2624): at com.htc.android.mail.eassvc.contact.ContactManager.ge
tDeviceChangeList(ContactManager.java:1140)
W/System.err( 2624): at com.htc.android.mail.eassvc.core.ContactSyncSource.ge
tDeviceChangeList(ContactSyncSource.java:59)

part 2
W/System.err( 2624): at com.htc.android.mail.eassvc.core.SyncManager.syncEASC
ontact(SyncManager.java:3339)
W/System.err( 2624): at com.htc.android.mail.eassvc.core.SyncManager.doSync(S
yncManager.java:611)
W/System.err( 2624): at com.htc.android.mail.eassvc.core.SyncManager.doSync(S
yncManager.java:441)
W/System.err( 2624): at com.htc.android.mail.eassvc.EASAppSvc$ContactsCommand
Handler.handleMessage(EASAppSvc.java:4152)
W/System.err( 2624): at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 2624): at android.os.Looper.loop(Looper.java:123)
W/System.err( 2624): at android.os.HandlerThread.run(HandlerThread.java:60)
V/EAS_SyncEngine( 2624): < DS() false
V/EAS_AppSvc( 2624): SyncThreadManager.messageDone(1) 1131545616
V/BaseSyncSource( 2624): > saveData(1)
V/BaseSyncSource( 2624): > saveData(1)
I/DumpStateReceiver( 58): Added state dump to 1 crashes
D/dalvikvm( 2624): GC freed 4629 objects / 310760 bytes in 156ms
V/BaseSyncSource( 2624): < saveData()1
V/EAS_AppSvc( 2624): StatusController > syncEnd(1)
V/EAS_AppSvc( 2624): isDoSync() : nothing running
V/EAS_AppSvc( 2624): StatusController > icon End
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(CANCEL,0)
E/JOGBALL ( 58): open failed errno: 2
V/EAS_AppSvc( 2624): SyncThreadManager.hasSourceInQueue 2, 1131709200
V/EAS_AppSvc( 2624): SyncThreadManager.checkQueue() Calendar
V/BaseSyncSource( 2624): setPause(false,2)
V/EAS_AppSvc( 2624): SyncThreadManager.messageStart(2) 1131709200
V/EAS_AppSvc( 2624): StatusController > syncStart(2)
V/EAS_AppSvc( 2624): isDoSync() : nothing running
V/EAS_AppSvc( 2624): StatusController > icon Start
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,2)
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(SHOW,2)
V/EAS_AppSvc( 2624): CalendarCommandHandler: MSG_DO_SYNC
V/EAS_SyncEngine( 2624): > DS() : 2
I/EAS_SyncEngine( 2624): > syncMailFolderAndUpdAccount()
V/EAS_SyncEngine( 2624): > GFH()
V/EAS_SyncEngine( 2624): Folder sync key: {C0838569-7594-480F-9373-3AB23AB8B731}
1
D/InetAddress( 2624): mail.seacharter.net: 64.182.124.126 (family 2, proto 6)
I/EAS_SyncEngine( 2624): Response new sync key: {C0838569-7594-480F-9373-3AB23AB
8B731}1
D/dalvikvm( 2624): threadid=17 wakeup: interrupted
V/EAS_HTTP( 2624): Create a HttpClient with default setting
V/EAS_SyncEngine( 2624): < GFH()
I/MailSyncSource( 2624): > setFolderEnableSyncDown()
I/MailSyncSource( 2624): < setFolderEnableSyncDown()
I/MailSyncSource( 2624): > setFolderEnableSyncUp()
I/MailSyncSource( 2624): < setFolderEnableSyncUp()
V/MailSyncSource( 2624): - saveData()
V/EAS_SyncEngine( 2624): writeGlobalInfo: {C0838569-7594-480F-9373-3AB23AB8B731}
1
I/EAS_SyncEngine( 2624): < syncMailFolderAndUpdAccount(), return: true
V/EAS_SyncEngine( 2624): - GESK()2, collIdnull
D/InetAddress( 2624): mail.seacharter.net: 64.182.124.126 (family 2, proto 6)
E/EAS_SyncEngine( 2624): get Status: 4
D/dalvikvm( 2624): threadid=17 wakeup: interrupted
V/EAS_HTTP( 2624): Create a HttpClient with default setting
W/System.err( 2624): com.htc.android.mail.eassvc.core.SyncException: Protocol er
ror
W/System.err( 2624): at com.htc.android.mail.eassvc.core.SyncManager.getSyncC
mdError(SyncManager.java:5994)
W/System.err( 2624): at com.htc.android.mail.eassvc.core.SyncManager.getIniti
alSyncKey(SyncManager.java:867)
W/System.err( 2624): at com.htc.android.mail.eassvc.core.SyncManager.doSync(S
yncManager.java:582)
W/System.err( 2624): at com.htc.android.mail.eassvc.core.SyncManager.doSync(S
yncManager.java:441)
W/System.err( 2624): at com.htc.android.mail.eassvc.EASAppSvc$CalendarCommand
Handler.handleMessage(EASAppSvc.java:4301)
W/System.err( 2624): at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 2624): at android.os.Looper.loop(Looper.java:123)
W/System.err( 2624): at android.os.HandlerThread.run(HandlerThread.java:60)
V/EAS_AppSvc( 2624): SyncThreadManager.messageDone(2) 1131709200
V/BaseSyncSource( 2624): > saveData(2)
V/BaseSyncSource( 2624): > saveData(2)
I/ActivityManager( 58): Start proc com.android.calendar for content provider c
om.android.providers.calendar/.CalendarProvider: pid=3772 uid=10027 gids={3003}
I/dalvikvm( 3772): Debugger thread not active, ignoring DDM send (t=0x41504e4d l
=38)
I/dalvikvm( 3772): Debugger thread not active, ignoring DDM send (t=0x41504e4d l
=44)
I/ActivityThread( 3772): Publishing provider calendar: com.android.providers.cal
endar.CalendarProvider
D/dalvikvm( 58): GC freed 23865 objects / 1355576 bytes in 360ms
E/DatabaseUtils( 3772): Writing exception to parcel
E/DatabaseUtils( 3772): java.lang.IllegalArgumentException: Unknown URL content:
//calendar/easSyncInfo
E/DatabaseUtils( 3772): at com.android.providers.calendar.CalendarProvid
er.updateInternal(CalendarProvider.java:3701)
E/DatabaseUtils( 3772): at android.content.AbstractSyncableContentProvid
er.update(AbstractSyncableContentProvider.java:251)
E/DatabaseUtils( 3772): at android.content.ContentProvider$Transport.upd
ate(ContentProvider.java:156)
E/DatabaseUtils( 3772): at android.content.ContentProviderNative.onTrans
act(ContentProviderNative.java:165)
E/DatabaseUtils( 3772): at android.os.Binder.execTransact(Binder.java:28
7)
E/DatabaseUtils( 3772): at dalvik.system.NativeStart.run(Native Method)
E/BaseSyncSource( 2624): endSync(1) 2:Unknown URL content://calendar/easSyncInfo
V/BaseSyncSource( 2624): - setLastSyncErrorCode()2
V/BaseSyncSource( 2624): > saveData(2)
V/BaseSyncSource( 2624): > saveData(2)
E/DatabaseUtils( 3772): Writing exception to parcel
E/DatabaseUtils( 3772): java.lang.IllegalArgumentException: Unknown URL content:
//calendar/easSyncInfo
E/DatabaseUtils( 3772): at com.android.providers.calendar.CalendarProvid
er.updateInternal(CalendarProvider.java:3701)
E/DatabaseUtils( 3772): at android.content.AbstractSyncableContentProvid
er.update(AbstractSyncableContentProvider.java:251)
E/DatabaseUtils( 3772): at android.content.ContentProvider$Transport.upd
ate(ContentProvider.java:156)
E/DatabaseUtils( 3772): at android.content.ContentProviderNative.onTrans
act(ContentProviderNative.java:165)
E/DatabaseUtils( 3772): at android.os.Binder.execTransact(Binder.java:28
7)
E/DatabaseUtils( 3772): at dalvik.system.NativeStart.run(Native Method)
E/BaseSyncSource( 2624): setLastSyncErrorCode() Unknown URL content://calendar/e
asSyncInfo
V/EAS_AppSvc( 2624): StatusController > syncFail(2)
V/EAS_AppSvc( 2624): isDoSync() : nothing running
V/EAS_AppSvc( 2624): StatusController > icon Fail End
V/EAS_AppSvc( 2624): ongoingSyncStatusNotification(CANCEL,0)
I/DumpStateReceiver( 58): Added state dump to 2 crashes
E/JOGBALL ( 58): open failed errno: 2
V/EAS_AppSvc( 2624): SyncThreadManager.checkQueue() empty
I/LockUtil( 2624): - release PowerLock: SYNCHRONIZED
D/dalvikvm( 120): GC freed 4690 objects / 238736 bytes in 212ms
D/dalvikvm( 2624): GC freed 3737 objects / 368880 bytes in 174ms
E/BulkCursor( 2624): Hit Crash Issue !! any side effect?. General exception when
closing
E/BulkCursor( 2624): java.lang.IllegalStateException: Binder has been finalized!
E/BulkCursor( 2624): at android.os.BinderProxy.transact(Native Method)
E/BulkCursor( 2624): at android.database.BulkCursorProxy.close(BulkCursorNati
ve.java:312)
E/BulkCursor( 2624): at android.database.BulkCursorToCursorAdaptor.close(Bulk
CursorToCursorAdaptor.java:125)
E/BulkCursor( 2624): at android.database.CursorWrapper.close(CursorWrapper.ja
va:49)
E/BulkCursor( 2624): at android.content.ContentResolver$CursorWrapperInner.cl
ose(ContentResolver.java:738)
E/BulkCursor( 2624): at android.content.ContentQueryMap.close(ContentQueryMap
.java:163)
E/BulkCursor( 2624): at android.content.ContentQueryMap.finalize(ContentQuery
Map.java:169)
E/BulkCursor( 2624): at dalvik.system.NativeStart.run(Native Method)
I/DumpStateReceiver( 58): Added state dump to 1 crashes

i tryed to search, this maybe a stupid question, but how do we coppy the logcat output so it can be posted?

Related

Multiple Exchange Accounts

I know generally that multiple Exchange accounts on the phone is not possible, but I was trolling through the registry on my phone today when I came across this:
HKEY_CURRENT_USER\Security\Software\Microsoft\ActiveSync
MultipleExchange
REG_DWORD
0x00000000 (0)
MaxExchangeSources
REG_DWORD
0x00000001 (1)
Has anyone seen these before and does it work if you change it to in theory allow more sources and accounts?

Need some dev help please

Hello devs! I need to tax your brains for some help with getting google sync working .. Just a bit of background: I've been making a rom for a few weeks, originally just to see if I could do it but now it's running pretty decently. It's nearing a completed state but sync is now my main sticking point. I built it from AOSP source, using the Eclair branch after the 2.1 code drop, then I added google apps from the milestone dump Maxisma posted in December.
So I can sign into Google OK, Market works, but sync is broken. It just doesn't happen, I don't get any errors, looks like it just doesn't even start. adb logcat doesn't give me much, but here it is:
Code:
I/ActivityManager( 71): Starting activity: Intent { act=android.settings.ACCOUNT_SYNC_SETTINGS cmp=com.android.providers.subscribedfeeds/com.android.settings.
AccountSyncSettings (has extras) }
V/SyncSettings( 71): Got account: Account {[email protected], type=com.google}
D/SyncSettings( 71): looking for sync adapters that match account Account {[email protected], type=com.google}
D/SyncSettings( 71): looking for sync adapters that match account Account {[email protected], type=com.google}
D/SyncSettings( 71): looking for sync adapters that match account Account {[email protected], type=com.google}
I/ActivityManager( 71): Displayed activity com.android.providers.subscribedfeeds/com.android.settings.AccountSyncSettings: 479 ms (total 479 ms)
Is there a service not running somewhere?
Update: I've just noticed in Dev Tools, there is a Sync Checker. If I sync from there I can get my calander and contacts. Google Mail still does not sync then. So this is looking like a background service thing. Any thoughts welcomed.
Also noticed that Exchange sync works fine, must be a Google service ...
Update: Problem fixed ... sync was disabled in the build.prop ...

Mapi Rule Client, tmail.exe and services.exe

Usually a MAPI Rule Client is called from the "tmail.exe" process. But in the HD2 it is called from a service (services.exe) and not "tmail.exe" (and "tmail.exe" also exists, but does not call the mapi rule client).
This rises a problem because "tmail.exe" only creates the MAPI Rule client one time, when the "tmail.exe" process starts. But with this service in the HD2 the Mapi rule client is always created and destructed every time it has to process a message...
I'm assuming that this happens in all Sense ROMs...
Any ideas on this?
Bump bump.
No one knows?

Looking for new Calendar database schema in Froyo

Hi all,
It appears that Google has changed the database schema for the Calendar app in Froyo, and the new schema is a black box until AOSP is updated. In the meantime, developers who don't have a Froyo-capable phone will have a hard time fixing their apps.
Could someone with a rooted Froyo phone dump the schema for the new database and post it?
On my phone (running Eclair), doing the following in a terminal will produce the schema:
Code:
# sqlite3 /data/data/com.android.providers.calendar/databases/calendar.db
sqlite> .schema
CREATE TABLE Attendees [...]
[...]
If the calendar provider has changed, then the calendar.db may be somewhere else. Any other information about how the calendar-related bits have changed is much appreciated. Cheers!
Code:
sqlite> .schema
CREATE TABLE Attendees (_id INTEGER PRIMARY KEY,event_id INTEGER,attendeeName TEXT,attendeeEmail TEXT,attendeeStatus INTEGER,attendeeRelationship INTEGER,attendeeType INTEGER);
CREATE TABLE CalendarAlerts (_id INTEGER PRIMARY KEY,event_id INTEGER,begin INTEGER NOT NULL,end INTEGER NOT NULL,alarmTime INTEGER NOT NULL,creationTime INTEGER NOT NULL,receivedTime INTEGER NOT NULL,notifyTime INTEGER NOT NULL,state INTEGER NOT NULL,minutes INTEGER,UNIQUE (alarmTime, begin, event_id));
CREATE TABLE CalendarCache (_id INTEGER PRIMARY KEY,key TEXT NOT NULL,value TEXT);
CREATE TABLE CalendarMetaData (_id INTEGER PRIMARY KEY,localTimezone TEXT,minInstance INTEGER,maxInstance INTEGER);
CREATE TABLE Calendars (_id INTEGER PRIMARY KEY,_sync_account TEXT,_sync_account_type TEXT,_sync_id TEXT,_sync_version TEXT,_sync_time TEXT,_sync_local_id INTEGER,_sync_dirty INTEGER,_sync_mark INTEGER,url TEXT,name TEXT,displayName TEXT,hidden INTEGER NOT NULL DEFAULT 0,color INTEGER,access_level INTEGER,selected INTEGER NOT NULL DEFAULT 1,sync_events INTEGER NOT NULL DEFAULT 0,location TEXT,timezone TEXT,ownerAccount TEXT, organizerCanRespond INTEGER NOT NULL DEFAULT 1);
CREATE TABLE Events (_id INTEGER PRIMARY KEY,_sync_account TEXT,_sync_account_type TEXT,_sync_id TEXT,_sync_version TEXT,_sync_time TEXT,_sync_local_id INTEGER,_sync_dirty INTEGER,_sync_mark INTEGER,calendar_id INTEGER NOT NULL,htmlUri TEXT,title TEXT,eventLocation TEXT,description TEXT,eventStatus INTEGER,selfAttendeeStatus INTEGER NOT NULL DEFAULT 0,commentsUri TEXT,dtstart INTEGER,dtend INTEGER,eventTimezone TEXT,duration TEXT,allDay INTEGER NOT NULL DEFAULT 0,visibility INTEGER NOT NULL DEFAULT 0,transparency INTEGER NOT NULL DEFAULT 0,hasAlarm INTEGER NOT NULL DEFAULT 0,hasExtendedProperties INTEGER NOT NULL DEFAULT 0,rrule TEXT,rdate TEXT,exrule TEXT,exdate TEXT,originalEvent TEXT,originalInstanceTime INTEGER,originalAllDay INTEGER,lastDate INTEGER,hasAttendeeData INTEGER NOT NULL DEFAULT 0,guestsCanModify INTEGER NOT NULL DEFAULT 0,guestsCanInviteOthers INTEGER NOT NULL DEFAULT 1,guestsCanSeeGuests INTEGER NOT NULL DEFAULT 1,organizer STRING, deleted INTEGER NOT NULL DEFAULT 0, dtstart2 INTEGER, dtend2 INTEGER, eventTimezone2 TEXT, syncAdapterData TEXT);
CREATE TABLE EventsRawTimes (_id INTEGER PRIMARY KEY,event_id INTEGER NOT NULL,dtstart2445 TEXT,dtend2445 TEXT,originalInstanceTime2445 TEXT,lastDate2445 TEXT,UNIQUE (event_id));
CREATE TABLE ExtendedProperties (_id INTEGER PRIMARY KEY,event_id INTEGER,name TEXT,value TEXT);
CREATE TABLE Instances (_id INTEGER PRIMARY KEY,event_id INTEGER,begin INTEGER,end INTEGER,startDay INTEGER,endDay INTEGER,startMinute INTEGER,endMinute INTEGER,UNIQUE (event_id, begin, end));
CREATE TABLE Reminders (_id INTEGER PRIMARY KEY,event_id INTEGER,minutes INTEGER,method INTEGER NOT NULL DEFAULT 0);
CREATE TABLE _sync_state (_id INTEGER PRIMARY KEY,account_name TEXT NOT NULL,account_type TEXT NOT NULL,data TEXT,UNIQUE(account_name, account_type));
CREATE TABLE _sync_state_metadata (version INTEGER);
CREATE TABLE android_metadata (locale TEXT);
CREATE VIEW view_events AS SELECT Events._id AS _id,htmlUri,title,description,eventLocation,eventStatus,selfAttendeeStatus,commentsUri,dtstart,dtend,duration,eventTimezone,allDay,visibility,timezone,selected,access_level,transparency,color,hasAlarm,hasExtendedProperties,rrule,rdate,exrule,exdate,originalEvent,originalInstanceTime,originalAllDay,lastDate,hasAttendeeData,calendar_id,guestsCanInviteOthers,guestsCanModify,guestsCanSeeGuests,organizer,deleted,Events._sync_id AS _sync_id,Events._sync_version AS _sync_version,Events._sync_dirty AS _sync_dirty,Events._sync_account AS _sync_account,Events._sync_account_type AS _sync_account_type,Events._sync_time AS _sync_time,Events._sync_local_id AS _sync_local_id,Events._sync_mark AS _sync_mark,url,ownerAccount,sync_events FROM Events JOIN Calendars ON (Events.calendar_id=Calendars._id);
CREATE INDEX attendeesEventIdIndex ON Attendees (event_id);
CREATE INDEX calendarAlertsEventIdIndex ON CalendarAlerts (event_id);
CREATE INDEX eventSyncAccountAndIdIndex ON Events (_sync_account_type, _sync_account, _sync_id);
CREATE INDEX eventsCalendarIdIndex ON Events (calendar_id);
CREATE INDEX extendedPropertiesEventIdIndex ON ExtendedProperties (event_id);
CREATE INDEX instancesStartDayIndex ON Instances (startDay);
CREATE INDEX remindersEventIdIndex ON Reminders (event_id);
CREATE TRIGGER calendar_cleanup DELETE ON Calendars BEGIN DELETE FROM Events WHERE calendar_id = old._id;END;
CREATE TRIGGER events_cleanup_delete DELETE ON Events BEGIN DELETE FROM Instances WHERE event_id = old._id;DELETE FROM EventsRawTimes WHERE event_id = old._id;DELETE FROM Attendees WHERE event_id = old._id;DELETE FROM Reminders WHERE event_id = old._id;DELETE FROM CalendarAlerts WHERE event_id = old._id;DELETE FROM ExtendedProperties WHERE event_id = old._id;END;
CREATE TRIGGER events_insert AFTER INSERT ON Events BEGIN UPDATE Events SET _sync_account=(SELECT _sync_account FROM Calendars WHERE Calendars._id=new.calendar_id),_sync_account_type=(SELECT _sync_account_type FROM Calendars WHERE Calendars._id=new.calendar_id) WHERE Events._id=new._id;END;
The Calendar content provider has changed in Froyo, which seems to be the main source for app breakage. The new URIs and package names are as follows.
Content provider URI
Old: content://calendar/
New: content://com.android.calendar/
Calendar app package name
Old: com.android.calendar
New: com.google.android.calendar
Thanks for the details!
Thanks for the information.
Were you able to try accessing com.google.android.calendar.EditEvent in creating new events?
Has the EditEvent changed too?
smaerty said:
Code:
sqlite> .schema
CREATE TABLE Attendees (_id INTEGER PRIMARY KEY,event_id INTEGER,attendeeName TEXT,attendeeEmail TEXT,attendeeStatus INTEGER,attendeeRelationship INTEGER,attendeeType INTEGER);
CREATE TABLE CalendarAlerts (_id INTEGER PRIMARY KEY,event_id INTEGER,begin INTEGER NOT NULL,end INTEGER NOT NULL,alarmTime INTEGER NOT NULL,creationTime INTEGER NOT NULL,receivedTime INTEGER NOT NULL,notifyTime INTEGER NOT NULL,state INTEGER NOT NULL,minutes INTEGER,UNIQUE (alarmTime, begin, event_id));
CREATE TABLE CalendarCache (_id INTEGER PRIMARY KEY,key TEXT NOT NULL,value TEXT);
CREATE TABLE CalendarMetaData (_id INTEGER PRIMARY KEY,localTimezone TEXT,minInstance INTEGER,maxInstance INTEGER);
CREATE TABLE Calendars (_id INTEGER PRIMARY KEY,_sync_account TEXT,_sync_account_type TEXT,_sync_id TEXT,_sync_version TEXT,_sync_time TEXT,_sync_local_id INTEGER,_sync_dirty INTEGER,_sync_mark INTEGER,url TEXT,name TEXT,displayName TEXT,hidden INTEGER NOT NULL DEFAULT 0,color INTEGER,access_level INTEGER,selected INTEGER NOT NULL DEFAULT 1,sync_events INTEGER NOT NULL DEFAULT 0,location TEXT,timezone TEXT,ownerAccount TEXT, organizerCanRespond INTEGER NOT NULL DEFAULT 1);
CREATE TABLE Events (_id INTEGER PRIMARY KEY,_sync_account TEXT,_sync_account_type TEXT,_sync_id TEXT,_sync_version TEXT,_sync_time TEXT,_sync_local_id INTEGER,_sync_dirty INTEGER,_sync_mark INTEGER,calendar_id INTEGER NOT NULL,htmlUri TEXT,title TEXT,eventLocation TEXT,description TEXT,eventStatus INTEGER,selfAttendeeStatus INTEGER NOT NULL DEFAULT 0,commentsUri TEXT,dtstart INTEGER,dtend INTEGER,eventTimezone TEXT,duration TEXT,allDay INTEGER NOT NULL DEFAULT 0,visibility INTEGER NOT NULL DEFAULT 0,transparency INTEGER NOT NULL DEFAULT 0,hasAlarm INTEGER NOT NULL DEFAULT 0,hasExtendedProperties INTEGER NOT NULL DEFAULT 0,rrule TEXT,rdate TEXT,exrule TEXT,exdate TEXT,originalEvent TEXT,originalInstanceTime INTEGER,originalAllDay INTEGER,lastDate INTEGER,hasAttendeeData INTEGER NOT NULL DEFAULT 0,guestsCanModify INTEGER NOT NULL DEFAULT 0,guestsCanInviteOthers INTEGER NOT NULL DEFAULT 1,guestsCanSeeGuests INTEGER NOT NULL DEFAULT 1,organizer STRING, deleted INTEGER NOT NULL DEFAULT 0, dtstart2 INTEGER, dtend2 INTEGER, eventTimezone2 TEXT, syncAdapterData TEXT);
CREATE TABLE EventsRawTimes (_id INTEGER PRIMARY KEY,event_id INTEGER NOT NULL,dtstart2445 TEXT,dtend2445 TEXT,originalInstanceTime2445 TEXT,lastDate2445 TEXT,UNIQUE (event_id));
CREATE TABLE ExtendedProperties (_id INTEGER PRIMARY KEY,event_id INTEGER,name TEXT,value TEXT);
CREATE TABLE Instances (_id INTEGER PRIMARY KEY,event_id INTEGER,begin INTEGER,end INTEGER,startDay INTEGER,endDay INTEGER,startMinute INTEGER,endMinute INTEGER,UNIQUE (event_id, begin, end));
CREATE TABLE Reminders (_id INTEGER PRIMARY KEY,event_id INTEGER,minutes INTEGER,method INTEGER NOT NULL DEFAULT 0);
CREATE TABLE _sync_state (_id INTEGER PRIMARY KEY,account_name TEXT NOT NULL,account_type TEXT NOT NULL,data TEXT,UNIQUE(account_name, account_type));
CREATE TABLE _sync_state_metadata (version INTEGER);
CREATE TABLE android_metadata (locale TEXT);
CREATE VIEW view_events AS SELECT Events._id AS _id,htmlUri,title,description,eventLocation,eventStatus,selfAttendeeStatus,commentsUri,dtstart,dtend,duration,eventTimezone,allDay,visibility,timezone,selected,access_level,transparency,color,hasAlarm,hasExtendedProperties,rrule,rdate,exrule,exdate,originalEvent,originalInstanceTime,originalAllDay,lastDate,hasAttendeeData,calendar_id,guestsCanInviteOthers,guestsCanModify,guestsCanSeeGuests,organizer,deleted,Events._sync_id AS _sync_id,Events._sync_version AS _sync_version,Events._sync_dirty AS _sync_dirty,Events._sync_account AS _sync_account,Events._sync_account_type AS _sync_account_type,Events._sync_time AS _sync_time,Events._sync_local_id AS _sync_local_id,Events._sync_mark AS _sync_mark,url,ownerAccount,sync_events FROM Events JOIN Calendars ON (Events.calendar_id=Calendars._id);
CREATE INDEX attendeesEventIdIndex ON Attendees (event_id);
CREATE INDEX calendarAlertsEventIdIndex ON CalendarAlerts (event_id);
CREATE INDEX eventSyncAccountAndIdIndex ON Events (_sync_account_type, _sync_account, _sync_id);
CREATE INDEX eventsCalendarIdIndex ON Events (calendar_id);
CREATE INDEX extendedPropertiesEventIdIndex ON ExtendedProperties (event_id);
CREATE INDEX instancesStartDayIndex ON Instances (startDay);
CREATE INDEX remindersEventIdIndex ON Reminders (event_id);
CREATE TRIGGER calendar_cleanup DELETE ON Calendars BEGIN DELETE FROM Events WHERE calendar_id = old._id;END;
CREATE TRIGGER events_cleanup_delete DELETE ON Events BEGIN DELETE FROM Instances WHERE event_id = old._id;DELETE FROM EventsRawTimes WHERE event_id = old._id;DELETE FROM Attendees WHERE event_id = old._id;DELETE FROM Reminders WHERE event_id = old._id;DELETE FROM CalendarAlerts WHERE event_id = old._id;DELETE FROM ExtendedProperties WHERE event_id = old._id;END;
CREATE TRIGGER events_insert AFTER INSERT ON Events BEGIN UPDATE Events SET _sync_account=(SELECT _sync_account FROM Calendars WHERE Calendars._id=new.calendar_id),_sync_account_type=(SELECT _sync_account_type FROM Calendars WHERE Calendars._id=new.calendar_id) WHERE Events._id=new._id;END;
Click to expand...
Click to collapse
can any one help me to understand this.
the reminder table has a column called method, its allowed values are 0,1,2,3
0 for default and do nothing
1 add reminder
2 email reminder
3 SMS
in case of email and SMS where the number of the SMS recipient can be saved?
if any one know please help

[Q] Calendar schema on Sesnastion

Could someone with a rooted Sensation phone dump the schema for the calendar database and post it?
Code:
# sqlite3 /data/data/com.android.providers.calendar/databases/calendar.db
sqlite> .schema
[...]
I am looking for reason why my calendar entries become hidden after sync. I found thet there is different fields in CalendarProvider from version to version but I don't know all tables in use.
Here is it:
Code:
CREATE TABLE Attendees (_id INTEGER PRIMARY KEY,event_id INTEGER,attendeeName TEXT,attendeeEmail TEXT,attendeeStatus INTEGER,
attendeeRelationship INTEGER,attendeeType INTEGER);
CREATE TABLE CalendarAlerts (_id INTEGER PRIMARY KEY,event_id INTEGER,begin INTEGER NOT NULL,end INTEGER NOT NULL,alarmTime INTEGER NOT NULL,
creationTime INTEGER NOT NULL,receivedTime INTEGER NOT NULL,notifyTime INTEGER NOT NULL,state INTEGER NOT NULL,minutes INTEGER,UNIQUE (alarmTime,
begin, event_id));
CREATE TABLE CalendarCache (_id INTEGER PRIMARY KEY,key TEXT NOT NULL,value TEXT);
CREATE TABLE CalendarMetaData (_id INTEGER PRIMARY KEY,localTimezone TEXT,minInstance INTEGER,maxInstance INTEGER);
CREATE TABLE CalendarSmsAlerts (_id INTEGER PRIMARY KEY,event_id INTEGER,begin INTEGER NOT NULL,end INTEGER NOT NULL,alarmTime INTEGER NOT
NULL,creationTime INTEGER NOT NULL,receivedTime INTEGER NOT NULL,notifyTime INTEGER NOT NULL,state INTEGER NOT NULL,minutes INTEGER,UNIQUE (
alarmTime, begin, event_id));
CREATE TABLE Calendars (_id INTEGER PRIMARY KEY,_sync_account TEXT,_sync_account_type TEXT,_sync_id TEXT,_sync_version TEXT,_sync_time TEXT,
_sync_local_id INTEGER,_sync_dirty INTEGER,_sync_mark INTEGER,url TEXT,name TEXT,displayName TEXT,displayOrder INTEGER,hidden INTEGER NOT
NULL DEFAULT 0,color INTEGER,access_level INTEGER,selected INTEGER NOT NULL DEFAULT 1,sync_events INTEGER NOT NULL DEFAULT 0,location TEXT,
timezone TEXT,ownerAccount TEXT, organizerCanRespond INTEGER NOT NULL DEFAULT 1,hide_declined INTEGER NOT NULL DEFAULT 0,reminder_type INTEGER
NOT NULL DEFAULT 1,reminder_duration INTEGER NOT NULL DEFAULT 10,alerts_vibrate INTEGER NOT NULL DEFAULT 1,alerts_ringtone TEXT,start_view
TEXT,detailed_view TEXT,sync_source INTEGER NOT NULL DEFAULT 0);
CREATE TABLE Events (_id INTEGER PRIMARY KEY AUTOINCREMENT,_sync_account TEXT,_sync_account_type TEXT,_sync_id TEXT,_sync_version TEXT,
_sync_time TEXT,_sync_local_id INTEGER,_sync_dirty INTEGER,_sync_mark INTEGER,calendar_id INTEGER NOT NULL,htmlUri TEXT,title TEXT,eventLocation
TEXT,description TEXT,eventStatus INTEGER,selfAttendeeStatus INTEGER NOT NULL DEFAULT 0,commentsUri TEXT,dtstart INTEGER,dtend INTEGER,
eventTimezone TEXT,duration TEXT,allDay INTEGER NOT NULL DEFAULT 0,visibility INTEGER NOT NULL DEFAULT 0,transparency INTEGER NOT NULL DEFAULT 0,
hasAlarm INTEGER NOT NULL DEFAULT 0,hasExtendedProperties INTEGER NOT NULL DEFAULT 0,rrule TEXT,rdate TEXT,exrule TEXT,exdate TEXT,
originalEvent TEXT,originalInstanceTime INTEGER,originalAllDay INTEGER,lastDate INTEGER,hasAttendeeData INTEGER NOT NULL DEFAULT 0,guestsCanModify
INTEGER NOT NULL DEFAULT 0,guestsCanInviteOthers INTEGER NOT NULL DEFAULT 1,guestsCanSeeGuests INTEGER NOT NULL DEFAULT 1,organizer STRING,
deleted INTEGER NOT NULL DEFAULT 0,dtstart2 INTEGER,dtend2 INTEGER,eventTimezone2 TEXT,syncAdapterData TEXT, importance INTEGER NOT NULL
DEFAULT 1,iCalGUID TEXT,last_update_time TEXT,parentID INTEGER,facebook_source_id TEXT,facebook_type TEXT,facebook_avatar_large TEXT,
facebook_avatar_small TEXT,facebook_avatar_local TEXT,MeetingStatus INTEGER NOT NULL DEFAULT 0);
CREATE TABLE EventsRawTimes (_id INTEGER PRIMARY KEY,event_id INTEGER NOT NULL,dtstart2445 TEXT,dtend2445 TEXT,originalInstanceTime2445 TEXT,
lastDate2445 TEXT,UNIQUE (event_id));
CREATE TABLE ExtendedProperties (_id INTEGER PRIMARY KEY,event_id INTEGER,name TEXT,value TEXT);
CREATE TABLE Instances (_id INTEGER PRIMARY KEY,event_id INTEGER,begin INTEGER,end INTEGER,startDay INTEGER,endDay INTEGER,startMinute
INTEGER,endMinute INTEGER,UNIQUE (event_id, begin, end));
CREATE TABLE Reminders (_id INTEGER PRIMARY KEY,event_id INTEGER,minutes INTEGER,method INTEGER NOT NULL DEFAULT 0);
CREATE TABLE _sync_state (_id INTEGER PRIMARY KEY,account_name TEXT NOT NULL,account_type TEXT NOT NULL,data TEXT,UNIQUE(account_name,
account_type));
CREATE TABLE _sync_state_metadata (version INTEGER);
CREATE TABLE android_metadata (locale TEXT);
CREATE TABLE easSyncInfo(_id INTEGER PRIMARY KEY AUTOINCREMENT,synckey STRING, CollID STRING, LastSyncResult INTEGER, LastSyncTime INTEGER,
LastSyncErrorCode INTEGER, Enabled INTEGER, accountName STRING NOT NULL);
CREATE TABLE easTracking(_id INTEGER REFERENCES Events(_id) PRIMARY KEY,serverId STRING ,_add INTEGER NOT NULL DEFAULT 0 ,_modify INTEGER
NOT NULL DEFAULT 0 ,_delete INTEGER NOT NULL DEFAULT 0 ,_syncing INTEGER NOT NULL DEFAULT 0 ,accountName STRING);
CREATE TABLE pcscSyncInfo(_id INTEGER PRIMARY KEY AUTOINCREMENT,LastSyncTime INTEGER, NextSyncTime INTEGER);
CREATE TABLE pcscTracking(_id INTEGER REFERENCES Events(_id) PRIMARY KEY,_guid STRING NOT NULL DEFAULT 'null',_add INTEGER NOT NULL DEFAULT 0 ,
_modify INTEGER NOT NULL DEFAULT 0 ,_delete INTEGER NOT NULL DEFAULT 0 ,_syncing INTEGER NOT NULL DEFAULT 0 );
CREATE VIEW view_events AS SELECT Events._id AS _id,htmlUri,title,description,eventLocation,eventStatus,selfAttendeeStatus,commentsUri,
dtstart,dtend,duration,eventTimezone,allDay,visibility,timezone,selected,access_level,transparency,color,hasAlarm,hasExtendedProperties,rrule,
rdate,exrule,exdate,originalEvent,originalInstanceTime,originalAllDay,lastDate,hasAttendeeData,calendar_id,guestsCanInviteOthers,
guestsCanModify,guestsCanSeeGuests,organizer,deleted,Events._sync_id AS _sync_id,Events._sync_version AS _sync_version,Events._sync_dirty AS _sync_dirty,
Events._sync_account AS _sync_account,Events._sync_account_type AS _sync_account_type,Events._sync_time AS _sync_time,Events._sync_local_id
AS _sync_local_id,Events._sync_mark AS _sync_mark,url,ownerAccount,sync_events,sync_source,hide_declined,reminder_type,reminder_duration,
alerts_vibrate,alerts_ringtone,parentID,importance,iCalGUID,last_update_time,facebook_source_id,facebook_type,facebook_avatar_large,
facebook_avatar_small,facebook_avatar_local,MeetingStatus FROM Events JOIN Calendars ON (Events.calendar_id=Calendars._id);
CREATE INDEX attendeesEventIdIndex ON Attendees (event_id);
CREATE INDEX calendarAlertsEventIdIndex ON CalendarAlerts (event_id);
CREATE INDEX calendarSmsAlertsEventIdIndex ON CalendarSmsAlerts (event_id);
CREATE INDEX easTrackingIndex ON easTracking(_id);
CREATE INDEX easTrackingIndex2 ON easTracking(_syncing);
CREATE INDEX easTrackingIndex3 ON easTracking(serverId);
CREATE INDEX eventSyncAccountAndIdIndex ON Events (_sync_account_type, _sync_account, _sync_id);
CREATE INDEX eventsCalendarIdIndex ON Events (calendar_id);
CREATE INDEX extendedPropertiesEventIdIndex ON ExtendedProperties (event_id);
CREATE INDEX instancesStartDayIndex ON Instances (startDay);
CREATE INDEX pcscTrackingIndex ON pcscTracking(_id);
CREATE INDEX pcscTrackingIndex2 ON pcscTracking(_syncing);
CREATE INDEX remindersEventIdIndex ON Reminders (event_id);
CREATE TRIGGER calendar_cleanup DELETE ON Calendars BEGIN DELETE FROM Events WHERE calendar_id = old._id;END;
CREATE TRIGGER easTracking_delete AFTER DELETE ON Events WHEN old._sync_account_type = 'com.htc.android.mail.eas' BEGIN UPDATE easTracking
SET _delete=1 WHERE _id=old._id;END;
CREATE TRIGGER easTracking_delete2 AFTER UPDATE OF deleted ON Events WHEN new._sync_account_type = 'com.htc.android.mail.eas' AND
new.deleted = 1 BEGIN UPDATE easTracking SET _delete=1 WHERE _id=new._id;END;
CREATE TRIGGER easTracking_update AFTER UPDATE OF _sync_dirty,title,eventLocation,description,eventStatus,selfAttendeeStatus,dtstart,dtend,
eventTimezone,duration,allDay,hasAlarm,importance,rrule,rdate,iCalGUID ON Events WHEN new._sync_account_type = 'com.htc.android.mail.eas' AND
new._sync_dirty = 1 BEGIN UPDATE easTracking SET _modify=1 WHERE _id=new._id;END;
CREATE TRIGGER events_cleanup_delete DELETE ON Events BEGIN DELETE FROM Instances WHERE event_id = old._id;DELETE FROM EventsRawTimes WHERE
event_id = old._id;DELETE FROM Attendees WHERE event_id = old._id;DELETE FROM Reminders WHERE event_id = old._id;DELETE FROM CalendarAlerts
WHERE event_id = old._id;DELETE FROM ExtendedProperties WHERE event_id = old._id;END;
CREATE TRIGGER events_insert AFTER INSERT ON Events BEGIN UPDATE Events SET _sync_account=(SELECT _sync_account FROM Calendars WHERE
Calendars._id=new.calendar_id),_sync_account_type=(SELECT _sync_account_type FROM Calendars WHERE Calendars._id=new.calendar_id) WHERE Events._id=
new._id;END;
CREATE TRIGGER pcscTracking_delete AFTER DELETE ON Events WHEN old.calendar_id = 1 BEGIN UPDATE pcscTracking SET _delete=1 WHERE _id=old._id
;END;
CREATE TRIGGER pcscTracking_update AFTER UPDATE OF _sync_dirty,title,eventLocation,description,eventStatus,selfAttendeeStatus,dtstart,dtend,
eventTimezone,duration,allDay,hasAlarm,importance,rrule,rdate,iCalGUID ON Events WHEN new.calendar_id = 1 AND new._sync_dirty = 1 BEGIN
UPDATE pcscTracking SET _modify=1 WHERE _id=new._id; UPDATE Events SET last_update_time=current_timestamp WHERE _id=new._id;END;
CREATE TRIGGER tracking_insert AFTER INSERT ON Events FOR EACH ROW BEGIN INSERT INTO eastracking(_id,_add,accountName) select new._id,1,(
SELECT _sync_account FROM Calendars WHERE Calendars._id=new.calendar_id) WHERE (SELECT _sync_account_type FROM Calendars WHERE Calendars._id =
new.calendar_id) = 'com.htc.android.mail.eas';INSERT INTO pcscTracking(_id,_add) select new._id,1 WHERE new.calendar_id = 1;END;

Categories

Resources