FIx in pymysql

This commit is contained in:
Antonio de la Rosa 2018-02-10 01:10:37 +01:00
parent 5f7c0202b4
commit 88f3186792
3 changed files with 20 additions and 14 deletions

View file

@ -6,14 +6,14 @@ pymysql.install_as_MySQLdb
import sqlalchemy.pool as pool
import traceback
mypool=None
class SqlClass:
mypool=None
def __init__(self, connection):
self.max_overflow=-1
self.pool_size=0
self.pool_size=15
self.error_connection=""
# Data of connection
self.connection=connection
@ -23,6 +23,8 @@ class SqlClass:
self.pool_recycle=3600
def connect(self):
global mypool
if self.conn==None:
try:
@ -34,16 +36,19 @@ class SqlClass:
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor)
if SqlClass.mypool==None:
SqlClass.mypool=pool.QueuePool(getconn, max_overflow=self.max_overflow, pool_size=self.pool_size, recycle=self.pool_recycle)
if mypool==None:
mypool=pool.QueuePool(getconn, max_overflow=self.max_overflow, pool_size=self.pool_size, recycle=self.pool_recycle, use_threadlocal=False)
self.conn=SqlClass.mypool.connect()
while not self.conn.open:
self.conn=SqlClass.mypool.connect()
self.conn=mypool.connect()
self.conn.ping(True)
"""
while not self.conn.open:
self.conn=SqlClass.mypool.connect()
"""
self.connected=True
except:
@ -64,9 +69,9 @@ class SqlClass:
self.connect()
#if fetch_type=="ASSOC":
#fetch_type=pymysql.cursors.DictCursor
#fetch_type=MySQLdb.cursors.DictCursor
#with self.conn.cursor(pymysql.cursors.DictCursor) as cursor:
#with self.conn.cursor(MySQLdb.cursors.DictCursor) as cursor:
cursor=self.conn.cursor(pymysql.cursors.DictCursor)
try:

View file

@ -5,7 +5,7 @@ import re
import uuid
from importlib import import_module, reload
from collections import OrderedDict
from paramecio.cromosoma.databases.mysqldb import SqlClass
from paramecio.cromosoma.databases.pymysql import SqlClass
from paramecio.cromosoma.coreforms import BaseForm, HiddenForm
import copy
import traceback

View file

@ -21,7 +21,8 @@ setup(name='paramecio',
url='https://github.com/paramecio/parameciofm/',
packages=['paramecio', 'paramecio.i18n', 'paramecio.settings'],
include_package_data=True,
install_requires=['bottle', 'mako', 'mysqlclient', 'sqlalchemy', 'oslo.concurrency', 'itsdangerous', 'colorama','cherrypy', 'arrow'],
install_requires=['bottle', 'mako', 'pymysql', 'sqlalchemy',
'oslo.concurrency', 'itsdangerous', 'colorama','cherrypy', 'arrow'],
entry_points={'console_scripts': [
'paramecio = paramecio.console:start',
]},