Closed Bug 1058282 Opened 10 years ago Closed 10 years ago

[MMS] User does not receive a pop up asking to activate data to send message after disabling Wifi and Data

Categories

(Firefox OS Graveyard :: RIL, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(blocking-b2g:2.1+, firefox33 wontfix, firefox34 fixed, firefox35 fixed, b2g-v1.4 wontfix, b2g-v2.0 verified, b2g-v2.1 verified, b2g-v2.2 verified)

VERIFIED FIXED
2.1 S6 (10oct)
blocking-b2g 2.1+
Tracking Status
firefox33 --- wontfix
firefox34 --- fixed
firefox35 --- fixed
b2g-v1.4 --- wontfix
b2g-v2.0 --- verified
b2g-v2.1 --- verified
b2g-v2.2 --- verified

People

(Reporter: jthomas, Assigned: hchang)

Details

(Whiteboard: [2.1-flame-test-run-1])

Attachments

(7 files, 1 obsolete file)

Attached image Message not sent
Description: After disabling Data and Wifi the user will not receive a pop up asking to activate data to send the message. Repro Steps: 1) Update a Flame to 20140825040204 2) Select Settings 3) Select Wi-Fi 4) Disable Wi-Fi 5) Select Cellular & Data. 6) Select valid Sim Card 7) Disable Data Connection 8) Compose a text message with an attachment. 9) Send message to contact. Actual: After attempting to send an SMS the user receives a message saying "Message not sent, There was a problem sending the message. Please try again." The message is slightly different on the Flame 2.1 compared to the rest of the devices. Expected: It is expected that the user will receive a pop up asking to activate data in order to send an SMS. Environmental Variables: Device: Flame Master 319(mb) Build ID: 20140825040204 Gaia: e424c85eda87a40c0fa64d6a779c3fa368bf770b Gecko: daa84204a11a Version: 34.0a1 (Master) Firmware Version: v123 User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0 Repro frequency: 100% Link to failed test case: https://moztrap.mozilla.org/manage/case/8941/ See attached: Screenshot,logcat.
This issue DOES reproduce on the Flame Master 512(mb) Open_C 2.1, Flame 2.0 319(mb), Open_C 2.0, Flame 1.4 319(mb), and Open_C 1.4 User receives the message that the sms was not sent instead of the option to enable data. Environmental Variables: Device: Flame Master 512(MB) Build ID: 20140825040204 Gaia: e424c85eda87a40c0fa64d6a779c3fa368bf770b Gecko: daa84204a11a Version: 34.0a1 (Master) Firmware Version: v123 Environmental Variables: Device: Open_C Master Build ID: 20140825040204 Gaia: e424c85eda87a40c0fa64d6a779c3fa368bf770b Gecko: daa84204a11a Version: 34.0a1 (Master) Firmware Version: P821A10V1.0.0B06_LOG_DL User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0 Environmental Variables: Device: Flame 2.0 319(mb) Build ID: 20140825000201 Gaia: 4c8b5ced1966079086d86dec3098ecf340881306 Gecko: b0545e46d08b Version: 32.0 (2.0) Firmware Version: v123 User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0 Environmental Variables: Device: Open_C 2.0 Build ID: 20140825000201 Gaia: 4c8b5ced1966079086d86dec3098ecf340881306 Gecko: b0545e46d08b Version: 32.0 (2.0) Firmware Version: P821A10V1.0.0B06_LOG_DL User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0 Environmental Variables: Device: Flame 1.4 319(mb) Build ID: 20140825063013 Gaia: cf9d74da6653efeb43d9653e81c61aa00e693a67 Gecko: cdcb73d0febc Version: 30.0 (1.4) Firmware Version: v123 User Agent: Mozilla/5.0 (Mobile; rv:30.0) Gecko/30.0 Firefox/30.0 Environmental Variables: Device: Open_C 1.4 Build ID: 20140825063013 Gaia: cf9d74da6653efeb43d9653e81c61aa00e693a67 Gecko: cdcb73d0febc Version: 30.0 (1.4) Firmware Version: P821A10V1.0.0B06_LOG_DL User Agent: Mozilla/5.0 (Mobile; rv:30.0) Gecko/30.0 Firefox/30.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Whiteboard: [2.1-flame-test-run-1]
Component: Gaia::SMS → RIL
It seems that the STR needs to clarify because in bug 1022850 comment 7, we saw same symptom was not reproducible in Buri 2.0/2.1. Does that means this is not 100% reproducible or it's because that there is something not specified clearly in STR? In addition, according to the attached log, the failure cause is that our device was not able to resolve "proxy.mobile.att.net" when only MMS data connection is established: 08-25 15:02:22.408 313 313 I Gecko : -@- MmsService: Failed to ensureRouting: Error: Failed to resolve 'proxy.mobile.att.net', with status: 2152398878 where 2152398878 represents NS_ERROR_UNKNOWN_HOST (804B001E) defined in https://dev.mozilla.jp/localmdc/localmdc_6154.html
Please answer comment 3.
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage-]
Flags: needinfo?(ktucker) → needinfo?(jthomas)
This bug does NOT reproduce on the Buri 2.1. I was only able to reproduce in the Flame and Open_C devices. Environmental Variables: Device: Buri Master Build ID: 20140825193023 Gaia: 4d1d0ea5a82cddeeab497774cfa1703639e3c7d9 Gecko: dc352a7bf234 Version: 34.0a1 (Master) Firmware Version: v1.2device.cfg
QA Whiteboard: [QAnalyst-Triage-] → [QAnalyst-Triage?]
Flags: needinfo?(jthomas) → needinfo?(ktucker)
Give an actual result please.
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage-]
Flags: needinfo?(ktucker) → needinfo?(jthomas)
Buri 2.1 sends MMS successfully with Data and WiFi disabled. No pop up whatsoever is displayed.
QA Whiteboard: [QAnalyst-Triage-] → [QAnalyst-Triage?]
Flags: needinfo?(jthomas) → needinfo?(ktucker)
Summary: [SMS] User does not receive a pop up asking to activate data to send message after disabling Wifi and Data → [MMS] User does not receive a pop up asking to activate data to send message after disabling Wifi and Data
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
From comment 5, it seems to be device-specific issue. set qawanted to have adb logcat & tcpdump for both Buri Master and Flame Master for further comparison: https://github.com/bevis-tseng/Debug_Tools Thanks!
Assignee: nobody → btseng
Keywords: qawanted
QA Contact: aalldredge
I have attached the adb logcat and tcpdump from Buri Master and Flame Master. Environmental Variables: Device: Buri Master BuildID: 20140818072913 Gaia: ba1992f2addc5a84afc2eab426f222a6bf2962ba Gecko: bf27e27c994d Version: 34.0a1 (Master) Firmware: v1.2device.cfg User Agent: Mozilla/5.0 (Mobile; rv:33.0) Gecko/33.0 Firefox/33.0 Device: Flame Master BuildID: 20140903062451 Gaia: 52670853c17fc0d3d33065c667c0ce124c93b98f Gecko: 5e9826980be5 Version: 35.0a1 (Master) Firmware Version: v123 User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: qawanted
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
After comparing the log in Buri and Flame, with the same setup procedure in NetworkManager/NetworkService. The DNS is not working in Flame when only MMS connection is established: 09-03 10:17:57.830 1959 1959 I Gecko : -@- MmsService: Failed to ensureRouting: Error: Failed to resolve 'proxy.mobile.att.net', with status: 2152398878 where 2152398878 represents NS_ERROR_UNKNOWN_HOST (804B001E) defined in https://dev.mozilla.jp/localmdc/localmdc_6154.html [Blocking Requested - why for this release]: This is a flame-specific issue for DNS resolving for non-internet connections like MMS when data/wifi is off.
blocking-b2g: --- → 2.1?
triage: huge impact to user experience
blocking-b2g: 2.1? → 2.1+
The DNS configuration was changed since JB. Per offline discussion, need Henry's help to figure out how to enable DNS for non-internet connection like MMS when data/wifi are off.
Assignee: btseng → hchang
Could anyone try if the following steps make it work? 1) Before sending mms, use 'adb shell ps | grep netd' to grab the pid of netd 2) Do 'adb shell setprop net.dns1.[pid of netd] 1'. For example, 'adb shell setprop net.dns1.278 1' There is a mystery in [1] and I cannot find any equivalent operation in android. Without setting this property, the dns internal would try to connect to 8.8.8.8 [2] to see if ipv4 is available.... [1] http://androidxref.com/4.3_r2.1/xref/bionic/libc/netbsd/net/getaddrinfo.c#1873 [2] http://androidxref.com/4.3_r2.1/xref/bionic/libc/netbsd/net/getaddrinfo.c#399
Change [1] to let flag = Ci.nsIDNSService.RESOLVE_DISABLE_IPV6; gDNSService.asyncResolve(hostname, flag, onLookupComplete, Services.tm.mainThread); to pass along |AF_INET| down to [2] may avoid the issue mentioned in comment 17. Considering the possibility of ipv6 only hostname, we can do another DNS lookup with RESOLVE_DISABLE_IPV4 if the first attempt fails. [1] http://hg.mozilla.org/mozilla-central/file/843332cc69af/dom/system/gonk/NetworkManager.js#l696 [2] http://androidxref.com/4.3_r2.1/xref/bionic/libc/netbsd/net/getaddrinfo.c#1882
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage+][lead-review+]
I am gonna go for RESOLVE_DISABLE_IPV6 on MMS interface at this time. It will be solved while using KK and using android_getaddrinfoforiface to resolve MMS domain name.
Attached patch Bug1058280.patch (obsolete) — Splinter Review
Comment on attachment 8495872 [details] [diff] [review] Bug1058280.patch This patch will not work for "ipv6-only" mms transaction. We might have to file a bug to track this whenever this patch lands.
Attachment #8495872 - Flags: review?(btseng)
Comment on attachment 8495872 [details] [diff] [review] Bug1058280.patch Review of attachment 8495872 [details] [diff] [review]: ----------------------------------------------------------------- r+ with the follow-up bug to be created and addressed in the comment for better tracking. Thanks! :)
Attachment #8495872 - Flags: review?(btseng) → review+
Summary the analysis here for further reference: [Background] 1. FFOS has to set default interface to netd to support the DNS query for non-default network-interface. (In Android, the caller's pid to netd will be used to map the corresponding network-interface to be used. Hence, it is not needed for Android to set default interface for the DNS query of non-default interface.) 2. In KK implementation of _dns_getaddrinfo [1], when ai_family == AF_UNSPEC, and default interface is used, routing of 8.8.8.8 and 2000:: will be used to check the capability of DNS query for IPv4 and for IPv6 respectively. If None, NS_NOTFOUND will be returned directly. [Problem] 3. For this bug, there is only MMS connection available. Hence, the default interface will be enabled with mms connection for dns query. However, the 8.8.8.8 & 2000:: is not needed for mms connection and shall not be set into its routing, so the dns query will always be rejected with NS_NOTFOUND. [Possible Solution in the future] 4. Since |android_getaddrinfoforiface| has been provided by AOSP, we could rely on this API to support DNS query over specified interface without setting the default interface to netd for non-default data connection like MMS. [1] http://androidxref.com/4.4.4_r1/xref/bionic/libc/netbsd/net/getaddrinfo.c#1932
Attachment #8495872 - Attachment is obsolete: true
Keywords: checkin-needed
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Please nominate this patch for Aurora approval when you get a chance :)
Flags: needinfo?(hchang)
Target Milestone: --- → 2.1 S6 (10oct)
Comment on attachment 8497918 [details] [diff] [review] Bug1058280 (r+'d, add reviewer) Approval Request Comment [Feature/regressing bug #]: MMS [User impact if declined]: User cannot send mms when wifi and data is off. [Describe test coverage new/current, TBPL]: Manual test [Risks and why]: No [String/UUID change made/needed]: No
Attachment #8497918 - Flags: approval-mozilla-aurora?
Flags: needinfo?(hchang)
Attachment #8497918 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
The issue is verified fixed on Flame 2.2 Master KK (319mb) (Full Flash), Flame 2.1 KK (319mb) (Full Flash) and Flame 2.0 KK (319mb) (Full Flash) Environmental Variables: Device: Flame 2.2 Master KK (319mb) (Full Flash) BuildID: 20141012040203 Gaia: 717ad4e8b7fc10ab8248500d00ba5ba0977fa8ab Gecko: 44168a7af20d Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf Version: 35.0a1 Firmware: V180 User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0 Environmental Variables: Device: Flame 2.1 KK (319mb) (Full Flash) BuildID: 20141012001201 Gaia: d18e130216cd3960cd327179364d9f71e42debda Gecko: 610ee0e6a776 Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf Version: 34.0a2 Firmware: V180 User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0 Environmental Variables: Device: Flame 2.0 KK (319mb) (Full Flash) BuildID: 20141012000202 Gaia: 6effca669c5baaf6cd7a63c91b71a02c6bd953b3 Gecko: 54ec9cb26b59 Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf Version: 32.0 ( Firmware: V180 User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0 Result: User DOES receive a pop up asking to activate data to send message after disabling Wifi and Data
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage+][lead-review+] → [QAnalyst-Triage?][lead-review+]
Flags: needinfo?(ktucker)
QA Whiteboard: [QAnalyst-Triage?][lead-review+] → [QAnalyst-Triage+][lead-review+]
Flags: needinfo?(ktucker)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: