[tahoe-lafs-trac-stream] [tahoe-lafs] #1989: foolscap: "an inbound callRemote ... failed" log entries include all arguments

tahoe-lafs trac at tahoe-lafs.org
Mon May 27 22:02:25 UTC 2013


#1989: foolscap: "an inbound callRemote ... failed" log entries include all
arguments
-------------------------+-------------------------------------------------
     Reporter:  daira    |      Owner:
         Type:  defect   |     Status:  new
     Priority:  normal   |  Milestone:  undecided
    Component:  code-    |    Version:  1.10.0
  network                |   Keywords:  memory confidentiality capleak
   Resolution:           |  logging foolscap
Launchpad Bug:           |
-------------------------+-------------------------------------------------
Description changed by daira:

Old description:

> For example:
> {{{
> allmydata.storage.backends.cloud.cloud_common.CloudError: ("try 1 failed:
> PUT object ('shares/oh/ohcac6xn5ot7hxwfcstdeqcf4e/0.16624',) {}", '')
> ]
> 03:53:03.778 L23 []#87614 an inbound callRemote that we [n4zt] executed
> (on behalf of someone else, TubID uzie) failed
> 03:53:03.778 L10 []#87615  reqID=66831,
> rref=<allmydata.storage.bucket.BucketWriter object at 0x3bf6b50>,
> methname=RIBucketWriter.write
> 03:53:03.792 L10 []#87616  args=[8716681284L, '<VERY long string>']
> 03:53:03.792 L10 []#87617  kwargs={}
> 03:53:03.792 L10 []#87618  the LOCAL failure was: [...]
> }}}
>
> Note that in this case the cloud backend has avoided logging the data
> that we attempted to write, but foolscap has logged it, causing a
> temporarily memory leak and resulting in performance problems when
> argument strings are large.
>
> In other cases, logging the arguments of remote operations may leak
> secrets into the log (see also #562 and related tickets).

New description:

 For example:
 {{{
 allmydata.storage.backends.cloud.cloud_common.CloudError: ("try 1 failed:
 PUT object ('shares/oh/ohcac6xn5ot7hxwfcstdeqcf4e/0.16624',) {}", '')
 ]
 03:53:03.778 L23 []#87614 an inbound callRemote that we [n4zt] executed
 (on behalf of someone else, TubID uzie) failed
 03:53:03.778 L10 []#87615  reqID=66831,
 rref=<allmydata.storage.bucket.BucketWriter object at 0x3bf6b50>,
 methname=RIBucketWriter.write
 03:53:03.792 L10 []#87616  args=[8716681284L, '<VERY long string>']
 03:53:03.792 L10 []#87617  kwargs={}
 03:53:03.792 L10 []#87618  the LOCAL failure was: [...]
 }}}

 Note that in this case the cloud backend has avoided logging the data that
 we attempted to write, but foolscap has logged it, causing a temporary
 memory leak, and possibly resulting in performance problems when argument
 strings are large.

 In other cases, logging the arguments of remote operations may leak
 secrets into the log (see also #562 and related tickets).

--

-- 
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1989#comment:3>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list