﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	launchpad_bug
3368	(apparently) get_version called via Foolscap now fails with a Violation	exarkun	GitHub <noreply@…>	"If I create a client node and point it at an introducer node and then I create a storage node and point it at the same introducer node, the storage node logs this to stdout:

{{{
2020-08-04T15:05:05-0400 [twisted.internet.defer#critical] Unhandled error in Deferred:
2020-08-04T15:05:05-0400 [twisted.internet.defer#critical]
        Traceback (most recent call last):
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/slicers/root.py"", line 107, in send                                                                
            d.callback(None)
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/twisted/internet/defer.py"", line 460, in callback                                                           
            self._startRunCallbacks(result)
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/twisted/internet/defer.py"", line 568, in _startRunCallbacks                                                 
            self._runCallbacks()
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/twisted/internet/defer.py"", line 654, in _runCallbacks                                                      
            current.result = callback(current.result, *args, **kw)
        --- <exception caught here> ---
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/banana.py"", line 215, in produce                                                                   
            slicer = self.newSlicerFor(obj)
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/banana.py"", line 314, in newSlicerFor                                                              
            return topSlicer.slicerForObject(obj)
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/slicer.py"", line 48, in slicerForObject                                                            
            return self.parent.slicerForObject(obj)
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/slicer.py"", line 48, in slicerForObject                                                            
            return self.parent.slicerForObject(obj)
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/slicer.py"", line 126, in slicerForObject                                                           
            return self.parent.slicerForObject(obj)
          File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/slicers/root.py"", line 66, in slicerForObject                                                      
            raise Violation(""cannot serialize %s (%s)"" % (obj, name))
        foolscap.tokens.Violation: Violation (<RootSlicer>.<answer-2-to-get_version>.??.??): (""cannot serialize 208234104320 (<class 'future.types.newint.newint'>)"",)                       
}}}

208234104320 is somewhat close to the amount of available space on my local disk so perhaps it is the value for `available-space` in the get_version response.

Also, in the flog:

{{{
15:05:05.754 L23 []#96 an outbound callRemote (that we [yn5r] sent to someone else [iyyl]) failed on the far end                                                                              
15:05:05.754 L10 []#97  reqID=2, rref=<RemoteReference at 0x7fdd4a603d50 [pb://iyylzcj72xlihtzgte2wc6kwe7ly5dyy@tcp:127.1:42961/cgakoaryq3lhkzvv3wmwpi64i4aokv4e]>, methname=RIStorageServer.t
ahoe.allmydata.com.get_version             
15:05:05.754 L10 []#98  the REMOTE failure was:                                                                                                                                              
 FAILURE:                                                                                                                                                                                     
 [CopiedFailure instance: Traceback from remote host -- Traceback (most recent call last):
   File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/twisted/protocols/tls.py"", line 295, in _flushReceiveBIO
     ProtocolWrapper.dataReceived(self, bytes)                   
   File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/twisted/protocols/policies.py"", line 120, in dataReceived
     self.wrappedProtocol.dataReceived(data)                                                                                                                                                 
   File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/twisted/internet/endpoints.py"", line 132, in dataReceived                                                           
     return self._wrappedProtocol.dataReceived(data)                                                                                                                                         
   File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/banana.py"", line 639, in dataReceived                                                                     
     self.handleData(chunk)                                                                                                                                                                  
 --- <exception caught here> ---                                                                                                                                                             
   File ""/home/exarkun/VirtualEnvs/tahoe-lafs/lib/python2.7/site-packages/foolscap/banana.py"", line 892, in handleData                                                                       
     raise Violation(""ABORT received"")                                                                                                                                                       
 foolscap.tokens.Violation: Violation (<RootUnslicer>.Answer(req=2).{}[http://allmydata.org/tahoe/protocols/storage/v1].{}[available-space]): ('ABORT received',)                            
 ]                                                                                                                                                                                            
}}}

which seems to support `available-space` as the issue.
"	defect	closed	normal	Support Python 3	code	n/a	fixed			
