Dask с Oracle (cx_ Oracle) DatabaseError: DPI-1062: неожиданное возвращаемое значение OCI - PullRequest
0 голосов
/ 07 января 2020

Я пытаюсь использовать Dask для ускорения функции, передаваемой через DataFrame - более подробную информацию c о том, что именно я делаю, можно найти здесь: Предыдущий вопрос .

* 1004 В любом случае, я использую cx_ Oracle для захвата данных в Python, и у меня никогда не было проблем с cx_ Oracle. Моя функция и Dask .compute():
def unicodeHandle(datai):
    for i, row in enumerate(datai['LDTEXT']):
        print(i)
        try:
            text = row.read()
            text.strip().split('[\W_]+') 
            print(text)
        except UnicodeDecodeError as e:
            datai.drop(i, inplace=True)
            print('Error at index {}: {!r}'.format(i, row))
            print(e)
    return datai

partitions = 7 # cpu_cores - 1
ddf = dd.from_pandas(datai, npartitions=partitions)
print(ddf)
dask = ddf.map_partitions(lambda ddf: unicodeHandle(ddf), meta=pd.DataFrame).compute()

ddf выглядит так, как должно. Однако, когда я запускаю dask = ddf.map_partitions, я получаю:


  File "<ipython-input-4-f8c37d88e1f6>", line 7, in unicodeHandle
    text = row.read()

DatabaseError: DPI-1062: unexpected OCI return value 99 in function dpiLob_readBytes

В сети ничего не говорится об этой ошибке. Кто-нибудь чем вызывает эту ошибку? Или есть какая-нибудь документация? Самое большее, что я нашел, это настоящая строка кода на Github.

Это началось только тогда, когда я начал пытаться реализовать Dask, но, похоже, это скорее ошибка БД, чем ошибка Dask.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...