@mad_god

Почему несколько процессов Python при записи в SQLite базу теряют информацию?

Информация, которая обрабатывается одним процессом, полностью пишется в базу,
в отличии от информации, которая обрабатывается четырьмя процессами. Отлов ошибок включён, но никаких сообщений нет, между тем база во втором случае меньше, раза в полтора.
Записи в базу происходят не одновременно, даже включил в скрипт открытие и закрытие базы при записи, а также ожидание, если база занята.

Прежде чем переходить к postgresql, хотелось бы разобраться с этим

кусок кода:

db = sqlite3.connect('data/mydb08')
	print "db=",db
	cursor = db.cursor()
	flag3=True
	while (flag3):
		try:
			cursor.executemany("INSERT INTO articles(link,alink,time, author,comment,rating) VALUES(?,?,?,?,?,?)",lst)
			flag3=False
		except sqlite3.Error, err:
			print "Error %s:" % err.args[0]
	
	d=db.commit()
	print "d=",d
	db.close()
  • Вопрос задан
  • 500 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы