Python программа зависает при использовании многопоточного запроса select sql с MySQL db - PullRequest
0 голосов
/ 15 апреля 2020

У меня есть программа, подобная этой:

def runBlockHash(i):
    #Somethings here#
    sql='SELECT * from abc where zzz=xyz' 
    mycursor.execute(sql, hashTree)
    results = mycursor.fetchall()
    #Something more here##

print("Connecting to SQL DB")
mydb = mysql.connector.connect(
    host=args['hostname'],
    user=args['username'],
    passwd=args['password'],
    database=args['database']
)
mycursor = mydb.cursor()


p=mp.Pool(2) #Define Number of Process to Use
p.map(runBlockHash,range(len(files_to_process))) # Call the function
p.close() #Close the multi threads
p.join()

Но проблема, с которой я сталкиваюсь, заключается в том, что, когда у меня более 1 процессора, даже один sql запрос не выполняется. Python программа просто зависла.

Я просто хочу запустить select операторов. Я не хочу вставлять или обновлять базу данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...