You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Roger Meier (JIRA)" <ji...@apache.org> on 2012/12/18 20:30:16 UTC
[jira] [Assigned] (THRIFT-1796) TJSONProtocol is not functional
[ https://issues.apache.org/jira/browse/THRIFT-1796?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Roger Meier reassigned THRIFT-1796:
-----------------------------------
Assignee: Roger Meier
> 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: 1.0, 1.1, 1.2
> Environment: Ubuntu
> Reporter: Avi Flamholz
> Assignee: Roger Meier
> Labels: patch
> Attachments: fix_py_json_protocol.patch
>
>
> 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