Page 1 of 1

OpenVPN AS Server GUI Error

Posted: Tue Oct 29, 2019 8:22 pm
by irfans
We have an OPENVPN AS cluster running on AWS, intermittently we will get an error on GUI after logging in (this error is present in both Admin and Client interfaces). Image. The interesting part is only one of the servers is impacted and restart of that server fixes the problem.

Re: OpenVPN AS Server GUI Error

Posted: Wed Oct 30, 2019 7:07 am
by novaflash
I think this could be related to a problem we encountered with SQLAlchemy and MySQL - a fix for this is being tested and prepared for release. If you look in the log file and you see messages like "MySQL server has gone away" then it's related to this issue. A next release of AS will address this.

Re: OpenVPN AS Server GUI Error

Posted: Mon Dec 02, 2019 6:44 pm
by irfans
Now that you have mentioned it I do see the following error in the logs

2019-12-02T18:24:40+0000 [stdout#info] u"DBBase._rollback: exception in session.rollback(): (MySQLdb._exceptions.OperationalError) (2006, 'MySQL server has gone away')\n(Background on this error at: http://sqlalche.me/e/e3q8): db/dbase:85,orm/session:990,orm/session:563,orm/session:523,engine/base:1705,engine/base:1743,engine/base:741,engine/base:1466,util/compat:383,engine/base:739,mysql/base:2227 (sqlalchemy.exc.OperationalError)"

We are running a cluster and once we hit this error on one node, other nodes also run into a problem with an invalid transaction

openvpnas.log.300:2019-11-25T16:23:42+0000 [stdout#info] Reason: <Fault 9000: "sqlalchemy.exc.StatementError: (sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back\n[SQL: SELECT config.profile_id AS config_profile_id, config.name AS config_name, config.value AS config_value \nFROM config INNER JOIN profile ON profile.id = config.profile_id \nWHERE config.name IN (%s) AND profile.name = %s]\n[parameters: [{}]]">

Re: OpenVPN AS Server GUI Error

Posted: Tue Dec 03, 2019 1:15 pm
by novaflash
Yes it's regrettable but I think you've hit the same bug we've seen before and we have a fix for it in the next AS release. It is currently undergoing final testing and preparation for release. We hope to get this out before the end of the month.