Closed Bug 1171581 Opened 9 years ago Closed 9 years ago

b2g profiler doesn't work with symbol server

Categories

(Core :: Gecko Profiler, defect, P1)

defect

Tracking

()

RESOLVED FIXED
NGA S2 (12Jun)

People

(Reporter: wilsonpage, Assigned: wcosta)

References

Details

Attachments

(1 file)

./profile.sh capture -s http://symbolapi.mozilla.org
Symbols: http://symbolapi.mozilla.org
Signaling Profiled Processes: 205 1224
Stabilizing 205 b2g ...
Pulling /data/local/tmp/profile_0_205.txt into profile_205_b2g.txt
Adding symbols to profile_205_b2g.txt and creating profile_205_b2g.sym ...
Traceback (most recent call last):
  File "./scripts/profile-symbolicate.py", line 489, in <module>
    main()
  File "./scripts/profile-symbolicate.py", line 471, in main
    libs.ResolveSymbols(progress=progress)
  File "./scripts/profile-symbolicate.py", line 356, in ResolveSymbols
    for sym, address in zip(r.json()[0], addresses):
  File "/usr/local/lib/python2.7/site-packages/requests/models.py", line 763, in json
    return json.loads(self.text, **kwargs)
  File "/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 384, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
Stabilizing 1224 Contacts protot ...
Pulling /data/local/tmp/profile_2_1224.txt into profile_1224_Contactsprotot.txt
Adding symbols to profile_1224_Contactsprotot.txt and creating profile_1224_Contactsprotot.sym ...
Traceback (most recent call last):
  File "./scripts/profile-symbolicate.py", line 489, in <module>
    main()
  File "./scripts/profile-symbolicate.py", line 471, in main
    libs.ResolveSymbols(progress=progress)
  File "./scripts/profile-symbolicate.py", line 356, in ResolveSymbols
    for sym, address in zip(r.json()[0], addresses):
  File "/usr/local/lib/python2.7/site-packages/requests/models.py", line 763, in json
    return json.loads(self.text, **kwargs)
  File "/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 384, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
Merging profile:  profile_205_b2g.sym profile_1224_Contactsprotot.sym
./gecko/tools/profiler/merge-profiles.py profile_205_b2g.sym profile_1224_Contactsprotot.sym
./profile.sh: line 405: ./gecko/tools/profiler/merge-profiles.py: No such file or directory

Results: profile_captured.sym
Removing old profile files (from device) ... done
Status: NEW → ASSIGNED
Priority: -- → P1
See Also: → 1168784
Does using http://symbolapi.mocotoolsstaging.net/ instead of http://symbolapi.mozilla.org work? If so, then this is caused by http://symbolapi.mozilla.org being broken at the moment.
Attachment #8616244 - Flags: review?(dhylands)
There were two problems here:

1) The python-requests package used is broken. Upgrading it solved the problem. As I am predicting more people will have trouble with this, I submitted a patch to replace requests by urllib2.

2) The symbolication server was down, with the alternate http://symbolapi.mocotoolsstaging.net server worked.
vladan reported that the symbol server is back to normal. I made a test and it is working.
Comment on attachment 8616244 [details] [review]
Replace python-requests by urllib2

Looks reasonable to me.
Attachment #8616244 - Flags: review?(dhylands) → review+
Keywords: checkin-needed
Master: https://github.com/mozilla-b2g/B2G/commit/c91974cf63994c64bec0f269d9ace2bb63a7be9e
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → NGA S2 (12Jun)
The symbolication server kept going down, presumably because it was being spammed by odd symbolication requests. These requests had "Bolt" in symbolSources field and they always had the same stack with TaobaoProtectSE.pdb as one of the top frames.

Do you know where these requests could have been coming from?
Flags: needinfo?(wilsonpage)
Flags: needinfo?(wcosta)
(In reply to Vladan Djeric (:vladan) -- please needinfo! from comment #7)
> The symbolication server kept going down, presumably because it was being
> spammed by odd symbolication requests. These requests had "Bolt" in
> symbolSources field and they always had the same stack with
> TaobaoProtectSE.pdb as one of the top frames.
> 
> Do you know where these requests could have been coming from?

I just followed the instructions from :wcosta's blog post [1].

[1] http://walac.github.io/profiling-firefox-os-apps/
Flags: needinfo?(wilsonpage)
(In reply to Vladan Djeric (:vladan) -- please needinfo! from comment #7)
> The symbolication server kept going down, presumably because it was being
> spammed by odd symbolication requests. These requests had "Bolt" in
> symbolSources field and they always had the same stack with
> TaobaoProtectSE.pdb as one of the top frames.
> 
> Do you know where these requests could have been coming from?

Nothing on my side. I will investigate and see if my changes screwed something up. I guess not, but double checking it won't hurt.
Flags: needinfo?(wcosta)
(In reply to Vladan Djeric (:vladan) -- please needinfo! from comment #7)
> The symbolication server kept going down, presumably because it was being
> spammed by odd symbolication requests. These requests had "Bolt" in
> symbolSources field and they always had the same stack with
> TaobaoProtectSE.pdb as one of the top frames.
> 
> Do you know where these requests could have been coming from?

I made a test here and it is not related to B2G. As there is a pdb file in the request, I guess it is something related to Windows Desktop Firerox.
Thanks! I thought it might be a B2G emulator stack on Windows or something
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: