2016-11-29 25 views
0

我对http响应(作为字典)执行xcom_pull,之前我xcom_push'ed 并且收到pickle exhausted before end of frame气流xcom_pull咸菜在帧结束之前耗尽

对于导致较短字典的http响应,我不会收到此错误。

这是对xcom_pull/push'ed的限制吗?

回答

0

我有这个问题或非常相似。我们正在使用一个用于Airflow的MySQL数据库。它发生在xcom_pull()之后并且曲线经过sqlalchemy。对数据库的更深入的研究表明,pickle以blob的形式存储在dag_pickle.pickle列中,其最大大小为65,535字节。

对于我们来说,一对情侣表的调整解决了这一问题:

alter table dag_pickle modify pickle MEDIUMBLOB; 
alter table xcom modify value MEDIUMBLOB; 

都可能没有必要。当表格由airflow/models.py创建时,更长期的修复可能涉及使用'length ='参数。