You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Avi Flamholz (JIRA)" <ji...@apache.org> on 2012/12/18 03:02:12 UTC

[jira] [Created] (THRIFT-1796) TJSONProtocol is not functional

Avi Flamholz created THRIFT-1796:
------------------------------------

             Summary: TJSONProtocol is not functional
                 Key: THRIFT-1796
                 URL: https://issues.apache.org/jira/browse/THRIFT-1796
             Project: Thrift
          Issue Type: Bug
          Components: Python - Library
    Affects Versions: 0.9, 1.0
         Environment: Ubunut
            Reporter: Avi Flamholz


TJSONProtocol is checked in to the Python libs, but it doesn't work at all. PyDev highlights a number of glaring typos and when I add a test for TJSONProtocol to SerializationTest.py, I got a sea of errors (see below). 


~/workspace/thrift/test/py$ python SerializationTest.py 
testBackwards (__main__.NormalBinaryTest) ... ok
testBools (__main__.NormalBinaryTest) ... ok
testCompactStruct (__main__.NormalBinaryTest) ... ok
testForwards (__main__.NormalBinaryTest) ... ok
testLargeDeltas (__main__.NormalBinaryTest) ... ok
testListBonks (__main__.NormalBinaryTest) ... ok
testNestedListsBonk (__main__.NormalBinaryTest) ... ok
testNestedListsI32x2 (__main__.NormalBinaryTest) ... ok
testNestedListsI32x3 (__main__.NormalBinaryTest) ... ok
testNestedMixedx2 (__main__.NormalBinaryTest) ... ok
testSerializeV1 (__main__.NormalBinaryTest) ... ok
testSerializeV2 (__main__.NormalBinaryTest) ... ok
testBackwards (__main__.AcceleratedBinaryTest) ... ok
testBools (__main__.AcceleratedBinaryTest) ... ok
testCompactStruct (__main__.AcceleratedBinaryTest) ... ok
testForwards (__main__.AcceleratedBinaryTest) ... ok
testLargeDeltas (__main__.AcceleratedBinaryTest) ... ok
testListBonks (__main__.AcceleratedBinaryTest) ... ok
testNestedListsBonk (__main__.AcceleratedBinaryTest) ... ok
testNestedListsI32x2 (__main__.AcceleratedBinaryTest) ... ok
testNestedListsI32x3 (__main__.AcceleratedBinaryTest) ... ok
testNestedMixedx2 (__main__.AcceleratedBinaryTest) ... ok
testSerializeV1 (__main__.AcceleratedBinaryTest) ... ok
testSerializeV2 (__main__.AcceleratedBinaryTest) ... ok
testBackwards (__main__.CompactProtocolTest) ... ok
testBools (__main__.CompactProtocolTest) ... ok
testCompactStruct (__main__.CompactProtocolTest) ... ok
testForwards (__main__.CompactProtocolTest) ... ok
testLargeDeltas (__main__.CompactProtocolTest) ... ok
testListBonks (__main__.CompactProtocolTest) ... ok
testNestedListsBonk (__main__.CompactProtocolTest) ... ok
testNestedListsI32x2 (__main__.CompactProtocolTest) ... ok
testNestedListsI32x3 (__main__.CompactProtocolTest) ... ok
testNestedMixedx2 (__main__.CompactProtocolTest) ... ok
testSerializeV1 (__main__.CompactProtocolTest) ... ok
testSerializeV2 (__main__.CompactProtocolTest) ... ok
testBackwards (__main__.JSONProtocolTest) ... ERROR
testBools (__main__.JSONProtocolTest) ... ERROR
testCompactStruct (__main__.JSONProtocolTest) ... ERROR
testForwards (__main__.JSONProtocolTest) ... ERROR
testLargeDeltas (__main__.JSONProtocolTest) ... ERROR
testListBonks (__main__.JSONProtocolTest) ... ERROR
testNestedListsBonk (__main__.JSONProtocolTest) ... ERROR
testNestedListsI32x2 (__main__.JSONProtocolTest) ... ERROR
testNestedListsI32x3 (__main__.JSONProtocolTest) ... ERROR
testNestedMixedx2 (__main__.JSONProtocolTest) ... ERROR
testSerializeV1 (__main__.JSONProtocolTest) ... ERROR
testSerializeV2 (__main__.JSONProtocolTest) ... ERROR
testSplit (__main__.AcceleratedFramedTest)
Test FramedTransport and BinaryProtocolAccelerated ... ok
testSerializeThenDeserialize (__main__.SerializersTest) ... ok

======================================================================
ERROR: testBackwards (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 204, in testBackwards
    obj = self._deserialize(VersioningTestV1, self._serialize(self.v2obj))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 1234, in write
    oprot.writeStructBegin('VersioningTestV2')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testBools (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 219, in testBools
    obj = self._deserialize(Bools, self._serialize(self.bools))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 166, in write
    oprot.writeStructBegin('Bools')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testCompactStruct (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 265, in testCompactStruct
    obj = self._deserialize(CompactProtoTestStruct, self._serialize(self.compact_struct))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/DebugProtoTest/ttypes.py", line 1864, in write
    oprot.writeStructBegin('CompactProtoTestStruct')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testForwards (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 199, in testForwards
    obj = self._deserialize(VersioningTestV2, self._serialize(self.v1obj))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 1061, in write
    oprot.writeStructBegin('VersioningTestV1')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testLargeDeltas (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 228, in testLargeDeltas
    obj = self._deserialize(LargeDeltas, self._serialize(self.large_deltas))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 5662, in write
    oprot.writeStructBegin('LargeDeltas')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testListBonks (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 258, in testListBonks
    obj = self._deserialize(ListBonks, self._serialize(self.list_bonks))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 6074, in write
    oprot.writeStructBegin('ListBonks')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testNestedListsBonk (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 252, in testNestedListsBonk
    obj = self._deserialize(NestedListsBonk, self._serialize(self.nested_lists_bonk))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 6153, in write
    oprot.writeStructBegin('NestedListsBonk')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testNestedListsI32x2 (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 234, in testNestedListsI32x2
    obj = self._deserialize(NestedListsI32x2, self._serialize(self.nested_lists_i32x2))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 5774, in write
    oprot.writeStructBegin('NestedListsI32x2')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testNestedListsI32x3 (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 240, in testNestedListsI32x3
    obj = self._deserialize(NestedListsI32x3, self._serialize(self.nested_lists_i32x3))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 5855, in write
    oprot.writeStructBegin('NestedListsI32x3')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testNestedMixedx2 (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 246, in testNestedMixedx2
    obj = self._deserialize(NestedMixedx2, self._serialize(self.nested_mixedx2))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 5977, in write
    oprot.writeStructBegin('NestedMixedx2')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testSerializeV1 (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 209, in testSerializeV1
    obj = self._deserialize(VersioningTestV1, self._serialize(self.v1obj))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 1061, in write
    oprot.writeStructBegin('VersioningTestV1')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'

======================================================================
ERROR: testSerializeV2 (__main__.JSONProtocolTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "SerializationTest.py", line 213, in testSerializeV2
    obj = self._deserialize(VersioningTestV2, self._serialize(self.v2obj))
  File "SerializationTest.py", line 189, in _serialize
    obj.write(prot)
  File "gen-py/ThriftTest/ttypes.py", line 1234, in write
    oprot.writeStructBegin('VersioningTestV2')
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 384, in writeStructBegin
    self.writeJSONObjectStart()
  File "../../lib/py/build/lib.linux-i686-2.7/thrift/protocol/TJSONProtocol.py", line 172, in writeJSONObjectStart
    self.context.write()
AttributeError: TJSONProtocol instance has no attribute 'context'




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira