exxeleron / qPython

interprocess communication between Python and kdb+
http://www.devnet.de
Apache License 2.0
152 stars 89 forks source link

error while deserializing symbol list with null as a first element #3

Closed maciejlach closed 10 years ago

maciejlach commented 10 years ago

qPython fails to deserialize symbol list with null as a first element.

Test cases:

``
``abc

Results in:

Traceback (most recent call last):
  File "D:\dev\workspace\qPython\samples\console.py", line 39, in <module>
    result = q(x)
  File "D:\dev\workspace\qPython\qpython\qconnection.py", line 174, in __call__
    return self.sync(parameters[0], *parameters[1:])
  File "D:\dev\workspace\qPython\qpython\qconnection.py", line 146, in sync
    response = self.receive(data_only = False)
  File "D:\dev\workspace\qPython\qpython\qconnection.py", line 169, in receive
    result = self._reader.read(raw)
  File "D:\dev\workspace\qPython\qpython\qreader.py", line 101, in read
    message.data = self.read_data(message.size, raw, message.is_compressed)
  File "D:\dev\workspace\qPython\qpython\qreader.py", line 151, in read_data
    return raw_data if raw else self._read_object()
  File "D:\dev\workspace\qPython\qpython\qreader.py", line 162, in _read_object
    return self._read_list(qtype)
  File "D:\dev\workspace\qPython\qpython\qreader.py", line 226, in _read_list
    symbols = self._buffer.get_symbols(length)
  File "D:\dev\workspace\qPython\qpython\qreader.py", line 387, in get_symbols
    raise QReaderException('Failed to read symbol from stream')
qpython.qreader.QReaderException: Failed to read symbol from stream