Если кто-то встретился с такой проблемой, .то вы просто не закрываете "курсор" когда отправляете много statements на сервер.
Вот пример кода который генерирует ошибку:
Вот пример кода, который позволяет избежать ошибки:
SqlQuery - это самописный билдер подключений. Он не влияет на проблему.
Проблема была замечена пока только на терадате.
Вот пример кода который генерирует ошибку:
    def executeSql(sqlCommand, parameters = ()):
        connect = SqlQuery.getConnect()
        try:
            cursor = connect.cursor()
            cursor.execute(sqlCommand, parameters)
            connect.commit()
        except Exception as e:
            logger.exception('Sql query error.', str(e))
            connect.rollback()
        finally:
            connect.close()
        return 0
Вот пример кода, который позволяет избежать ошибки:
    def executeSql(sqlCommand, parameters = ()):
        connect = SqlQuery.getConnect()
        try:
            cursor = connect.cursor()
            cursor.execute(sqlCommand, parameters)
            connect.commit()
        except Exception as e:
            logger.exception('Sql query error.', str(e))
            connect.rollback()
        finally:
            cursor.close()
            connect.close()
        return 0SqlQuery - это самописный билдер подключений. Он не влияет на проблему.
Проблема была замечена пока только на терадате.
Комментариев нет:
Отправить комментарий