tabs being replaced by question marks in report values

Bug #1390627 reported by Brian Murray on 2014-11-07
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Daisy
Medium
Unassigned
whoopsie (Ubuntu)
Medium
Barry Warsaw

Bug Description

Kees Cook and I discovered that something, either whoopsie or daisy or pycassa I guess, is replacing values that contain tabs with question marks. This error report contains ? instead of tabs in the Registers field:

https://errors.ubuntu.com/oops/e97b1abc-66bd-11e4-9406-fa163e525ba7

Registers:

rax 0xfffffffffffffdfc?-516
rbx 0x2782a60?41429600
rcx 0xffffffffffffffff?-1
rdx 0xb51?2897
rsi 0x3?3

This is also true in the database.

In [2]: cassandra.get_crash('e97b1abc-66bd-11e4-9406-fa163e525ba7')['Registers']
Out[2]: u'rax 0xfffffffffffffdfc?-516\nrbx 0x2782a60?41429600\nrcx 0xffffffffffffffff?-1\nrdx 0xb51?2897\nrsi 0x3?3\nrdi 0x2813dc0?42024384\nrbp 0x3?0x3\nrsp 0x7fff44d39920?0x7fff44d39920\nr8 0x3?3\nr9 0x0?0\nr10 0x0?0\nr11 0x293?659\nr12 0x2813dc0?42024384\nr13 0xb51?2897\nr14 0x7f1c37f00310?139759174288144\nr15 0x3?3\nrip 0x7f1c39fb439d?0x7f1c39fb439d <poll+45>\neflags 0x293?[ CF AF SF IF ]\ncs 0x33?51\nss 0x2b?43\nds 0x0?0\nes 0x0?0\nfs 0x0?0\ngs 0x0?0'

I've noticed this issue both from clients running 14.04 and 15.04. Other fields that include tabs are ProcStatus, Disassembly.

Related branches

Brian Murray (brian-murray) wrote :

Reading the data via cassandra-cli also shows ? in the data.

description: updated
Brian Murray (brian-murray) wrote :

Manually inserting a tab via cassandra-cli seems to stay as a tab.

RowKey: 787a79
=> (name=data, value=0x7f1c39fb439d <poll+45>:^Imov (%rsp),%rdi, timestamp=1415396939163000)

Brian Murray (brian-murray) wrote :

Evan - Do you have any ideas what might be transforming the data?

Brian Murray (brian-murray) wrote :

Modifying daisy to dump the registers from the report after decoding the crash file we can see the tabs have been replaced.

2014-11-07 22:53:22 [6664] [INFO] Booting worker with pid: 6664
rax 0xfffffffffffffdfc?-516
rbx 0x2782a60?41429600
rcx 0xffffffffffffffff?-1
rdx 0xb51?2897
rsi 0x3?3
rdi 0x2813dc0?42024384
rbp 0x3?0x3
rsp 0x7fff44d39920?0x7fff44d39920
r8 0x3?3
r9 0x0?0
r10 0x0?0
r11 0x293?659
r12 0x2813dc0?42024384
r13 0xb51?2897
r14 0x7f1c37f00310?139759174288144
r15 0x3?3
rip 0x7f1c39fb439d?0x7f1c39fb439d <poll+45>
eflags 0x293?[ CF AF SF IF ]
cs 0x33?51
ss 0x2b?43
ds 0x0?0
es 0x0?0
fs 0x0?0
gs 0x0?0
2014-11-07 22:53:27 (e2a2e4dc-66d0-11e4-b6b6-fa163eed9ff8) inserted into OOPS CF

Brian Murray (brian-murray) wrote :

The leads to me to believe its in the bson library included in whoopsie or the python-bson package on daisy.

Changed in whoopsie (Ubuntu):
status: New → Confirmed
Changed in daisy:
status: New → Confirmed
importance: Undecided → Medium
Changed in whoopsie (Ubuntu):
importance: Undecided → Medium
Brian Murray (brian-murray) wrote :

A literal tab character is not allowed in a JSON string per the JSON standard.

https://stackoverflow.com/questions/19799006/unable-to-parse-tab-in-json-files

Barry Warsaw (barry) on 2016-03-17
Changed in whoopsie (Ubuntu):
assignee: nobody → Barry Warsaw (barry)
Barry Warsaw (barry) on 2016-03-17
Changed in whoopsie (Ubuntu):
status: Confirmed → In Progress
Brian Murray (brian-murray) wrote :

I think fixing this in xenial is sufficient i.e. this isn't really worth SRU'ing by itself.

On Mar 17, 2016, at 09:42 PM, Brian Murray wrote:

>I think fixing this in xenial is sufficient i.e. this isn't really worth
>SRU'ing by itself.

Agreed!

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package whoopsie - 0.2.52

---------------
whoopsie (0.2.52) xenial; urgency=medium

  * src/whoopsie.c: Preserve TABs in crash data. (LP: #1390627)
  * debian/control: Build-Depend on pyflakes3.

 -- Barry Warsaw <email address hidden> Thu, 17 Mar 2016 17:09:44 -0400

Changed in whoopsie (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers