mysql 中的异常 Bad file descriptor

用python版本的mysql connector 构造自己的数据库操作类,实际使用的时候系统报错 Bad file descriptor

而且这个错误带点偶发性质,经过分析发觉导致这一问题的来源是在提交事务的时候数据库的对象已经主动关闭了!

思路:

beginTrans

insert data1

isExist=select data2(调用了自构造的getOneRow函数)

if isExist 

 insert data2

endTrans

由于之前提到过在同一conn下进行sql 查询,connector 本身带有一定的缓冲机制,所以在自定义的所有查询中函数(getOneRow,getAllRows)全部都是先打开conn然后再关闭.

由此导致了在上面的代码中endtrans时已经conn.close了

所以系统爆出了Bad file descriptor这个错误,

网上查询这个错误,大部分反应都是同socket有关系


本以为mysql connector是官方出得,谁知道前前后后居然产生了这么多问题。

之前用的各个版本的数据库操作类都是第三方写的,当自己来写的时候才发觉有些问题之前一直没有考虑到!

我是不是把这个数据库操作的python类放到git去啊

发布了280 篇原创文章 · 获赞 3 · 访问量 38万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章