oracle 使用SQL在BLOB中取消腌制celery 结果

oknwwptz  于 2022-11-22  发布在  Oracle
关注(0)|答案(1)|浏览(182)

我正在使用Oracle result_backend来存储Celery结果,这些结果是BLOB格式的。当我用python连接到数据库并使用pickle.loads()时,它将工作,但当我试图在Oracle SQL中使用to_char(dbms_lob.substr(BLOB_FIELD))解码它们时,它不工作。
例如,将echo 'Test'改为��

dtcbnfnu

dtcbnfnu1#

我更愿意建议您将结果序列化改为使用JSON或YAML。这应该像将result_serializer参数设置为'json'或'yaml'一样简单。我对Oracle知之甚少,但我认为它对Python的pickle一无所知...
Celery 4.0之前的版本默认使用pickle,在4.0及以后的版本中改为JSON。

相关问题