我有一个Python进程,它从数据库中读取文件,然后通过fout将它们写入网络卷:
例如:
fout = open((strOutputPath + strOutputName), 'wb')
for row in tupSQLResults :
fout.write(row[0])
fout.close()
99%的时候,这是成功的。然而,在某些情况下,我得到了一个可爱的: [Errno 12]无法通过str分配内存(系统exc\U信息()[1])
当出现这种情况时,我已经检查了机器的内存,通常Python进程只使用36mb(类似的虚拟内存)之类的内存,还有3+gbs的可用RAM。它会继续到下一个文件,并一般输出它们的罚款。(这是一个计划任务,每5分钟运行一次,并输出数据库中具有较新时间戳的任何文件。)
有没有想过是什么导致了这个内存分配错误?可能是目标卷有问题吗?如果是这样,是否有更可靠的传输机制(我应该在本地进行,然后使用scp或类似的方法进行复制?)你知道吗
谢谢!你知道吗
可能是由于某种原因网络卷不可用。你知道吗
我会捕捉异常,让进程休眠一段时间,然后再试一次。你知道吗
相关问题 更多 >
编程相关推荐