Closed Bug 1005609 Opened 8 years ago Closed 7 years ago

[Tarako][Dolphin][Perf][ImportContact] It takes a long time to import 50 contacts from a China Unicom SIM card

Categories

(Firefox OS Graveyard :: Performance, defect, P3)

ARM
Gonk (Firefox OS)
defect

Tracking

(b2g-v1.3T affected, b2g-v1.4 affected)

RESOLVED DUPLICATE of bug 1022490
2.1 S1 (1aug)
Tracking Status
b2g-v1.3T --- affected
b2g-v1.4 --- affected

People

(Reporter: bli, Unassigned)

References

Details

(Keywords: perf, Whiteboard: [c=progress p= s=2014.08.01.t u=tarako] [sprd307404][sprd315999][partner-blocker])

Attachments

(1 file)

77.38 KB, text/x-log
Details
Attached file logcat
Environment:
------------------------------------------------------
Gaia      d26a776beae0070b0032248a2ce482bbe6321a6d
Gecko     https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/e90f4b655511
BuildID   20140430164001
Version   28.1
ro.build.version.incremental=eng.cltbld.20140430.201217
ro.build.date=Wed Apr 30 20:12:29 EDT 2014

Notice:
------------------------------------------------------
Need a China Unicom SIM card which contains 50 contacts.


Steps to reproduce:
-------------------------------------------------------
1. Launch Contact
2. Tap on the gear icon on the top right corner
3. Select 'Import Contacts'
4. Select the China Unicom sim card which contains 50 contacts


Actual result:
------------------------------------------------
It takes about 45s to finish the import, and 35s is spent on reading from SIM card. 


Additional Info:
------------------------------------------------
With CMCC SIM card, it takes about 11s to finish the import, and about 4s is spent on reading from sim card.
blocking-b2g: --- → 1.3T?
Whiteboard: [sprd1005609]
Whiteboard: [sprd1005609] → [sprd307404]
triage: let's add this to backlog as this is not an everyday feature
ni? Francisco to take a look
blocking-b2g: 1.3T? → backlog
with CUCC USIM , Import 50 items
android 6821:11s
FFOS 6821 :   45S
hamachi  :    45s

with CMCC sim , Import 50 items
android 6821:11s
FFOS 6821 :   12s
hamachi   :   12s
Priority: -- → P3
Whiteboard: [sprd307404] → [c=progres p= s= u=][sprd307404]
Whiteboard: [c=progres p= s= u=][sprd307404] → [c=progress p= s= u=tarako] [sprd307404]
With the new PAC file and setting the IMEI correctly for the SIM, can we get a retest of this please?
Flags: needinfo?(bli)
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #3)
> With the new PAC file and setting the IMEI correctly for the SIM, can we get
> a retest of this please?
How can I make sure the IMEI setting is correct?

I tried on the latest build(20140528190947) with the latest pac.

Goto Settings->Device information->More Information, I saw the IMEI in the list is 000000000000000.

On this condition, it takes about 36s to finish the import, and 31s is spent on reading from SIM card.


Build Info
------------------------------------------------------
Gaia      303e375a1b4c721984dcb68dfca24d6f50c291f2
Gecko     https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/fcabeab5ebec
BuildID   20140528190947
Version   28.1
ro.build.version.incremental=eng.cltbld.20140528.181747
ro.build.date=Wed May 28 18:17:57 EDT 2014

The pac file I used can be found here:
https://www.dropbox.com/sh/i38s2m4z2z69f66/AACQ-3PMCkV4Y2HLWI0iGqnHa/2014-05-12
Flags: needinfo?(bli)
Bingqing, please see bug 995024.
Flags: needinfo?(bli)
Naoki, This is not related to IMEI. Flame/Dolphin v1.4 also has this problem.

Actually this bug is specific to China Unicom USIM card. Most of the time is spent on "Reading from SIM card" stage. Importing actually only tooks 20s. Here is my test result for importing 250 contacts from SIM card.
**********************************************************************************
Dolphin
China Unicom: 160s
China Mobile: 50s

Flame
China Unicom: 100s
China Mobile: 30s
Summary: [Tarako][Perf][ImportContact] It takes a long time to import 50 contacts from a China Unicom SIM card → [Tarako][Dolphin][Perf][ImportContact] It takes a long time to import 50 contacts from a China Unicom SIM card
it is because of read/write USIM .
write USIM : icc.updateContact() and mozContacts.save() take so much long time.
read USIM : the date is on going, later updated
I don't think this is related to the IMEI, and this bug can only be reproduced when using a China Unicom SIM card.
Please see comment 6 and comment 7.
Flags: needinfo?(bli)
Shiwei, please attach your analyse here.
Shawn, can you help?
Flags: needinfo?(ttsai)
Flags: needinfo?(sku)
pls shiwei suport the analyzation of r/w USIM webapi
Flags: needinfo?(shiwei.zhang)
 It was found that both icc.readContacts('adn') and mozContacts.save() are the main reasons of consume time in import_sim_contact.js. 

 In my the experiment 251 cantacts were import from a China Unicom SIM card. It took 17 seconds to wait the request of icc.readContacts('adn') change to onsuccess. and mozContacts.save() took 200~300ms to finish save one contact. 

 Moreover,In another experiment on communications/contacts/js/export/sim.js, when I exporting contacts to China Unicom SIM card. more the one second consumed in waiting the request of icc.updateContact() got onsuccess.

 I think we should pay more attention to optimize the performance of icc.readContacts(), icc.updateContact() and mozContacts.save().
Flags: needinfo?(shiwei.zhang)
Based on the last comment it sounds like we should try getting some profiling around this.  We should probably also check 1.3
Bingqing, can you try with 1.3 Buri/Hamachi please?
Flags: needinfo?(bli)
Keywords: qawanted
AOSP and FXOS have different designs.

Per AOSP case, telephony framework *can* fectch EF_ADN after SIM_LOADED event.
(There is no such event in FXOS)
Telephony framework will cache the phonebook EFs in cache that makes pbk reading faster.

However, it will allocated enough memeory (ex: 500 entries * 4K) for later using.
Tarako is with limited RAM device, it is not worth to occupy memeory for such cases.
Flags: needinfo?(sku)
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #14)
> Bingqing, can you try with 1.3 Buri/Hamachi please?

125 contacts
==================================================
1.3 Buri/Hamachi: It takes about 1 min 10 sec to finish the import, and about 55s is spent on reading from SIM card. 

1.3t Tarako: It takes about 1 min 15 sec to finish the import, and about 56s is spent on reading from SIM card.
Flags: needinfo?(bli)
(In reply to Bingqing Li from comment #17)

Build Info
==============

Hamachi
-------------------------------------------------------
Gaia      8d6bd6c484557c5322bf14798a4273d2a8f4300f
Gecko     https://hg.mozilla.org/releases/mozilla-b2g28_v1_3/rev/dc92670d5413
BuildID   20140616024002
Version   28.0
ro.build.version.incremental=eng.archermind.20131114.105818
ro.build.date=Thu Nov 14 10:58:33 CST 2013


Tarako:
-----------------------------------------------------
Gaia      e078d5d287cc4f31edb1aa826a913ccc35988471
Gecko     https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/a23f53d11f48
BuildID   20140616164012
Version   28.1
ro.build.version.incremental=eng.cltbld.20140616.200210
ro.build.date=Mon Jun 16 20:02:17 EDT 2014
Flags: needinfo?(janjongboom)
Whiteboard: [c=progress p= s= u=tarako] [sprd307404] → [c=progress p= s= u=tarako] [sprd307404][sprd315999]
It's icc.readContacts() and mozContacts.save() issue, mozContacts.save() is the same as bug 1022490.
Depends on: 1022490
Flags: needinfo?(janjongboom) → needinfo?(sergi.mansilla)
Flags: needinfo?(sergi.mansilla)
Keywords: qawanted
Flags: needinfo?(ttsai)
can we have the same fix for this bug as Bug 1022490 - [dolphin][perf] improve the performance of exporting Contacts to USIM card (china unicom) ?
blocking-b2g: backlog → 1.4?
Whiteboard: [c=progress p= s= u=tarako] [sprd307404][sprd315999] → [c=progress p= s= u=tarako] [sprd307404][sprd315999][partner-blocker]
Dup of bug 1022490 which has been landed in v1.4.
Status: NEW → RESOLVED
blocking-b2g: 1.4? → ---
Closed: 7 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1022490
Whiteboard: [c=progress p= s= u=tarako] [sprd307404][sprd315999][partner-blocker] → [c=progress p= s=2014.078.01.t u=tarako] [sprd307404][sprd315999][partner-blocker]
Whiteboard: [c=progress p= s=2014.078.01.t u=tarako] [sprd307404][sprd315999][partner-blocker] → [c=progress p= s=2014.08.01.t u=tarako] [sprd307404][sprd315999][partner-blocker]
Target Milestone: --- → 2.1 S1 (1aug)
Blocks: 1157082
You need to log in before you can comment on or make changes to this bug.