Forum

Welcome to ProjeQtOr new Forum. We migrated old forum to the new website.
You will find all your posts here, with your usual account.
Just one point : you’ll have to reinitialize your password. Use “Lost password” feature.

SQL Exception on el...
 
Notifications
Clear all

SQL Exception on elements updates

10 Posts
2 Users
0 Reactions
10.2 K Views
Iaurkano
(@iaurkano)
Posts: 104
Active Member
Topic starter
 
[#1763]

Hi Babynus,

sometimes, on elements update I received an SQL Exception ERROR. like this :

2014-04-11 10:33:40 ** ERROR ** Exception-[HY000] SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction
2014-04-11 10:33:40 ** ERROR **    For query : update activity set idStatus='4' , done='1' , doneDate='2014-04-11' , result='Modif page + controller + requête prévisions'  where id=758
2014-04-11 10:33:40 ** ERROR **    Strack trace :
2014-04-11 10:33:40 ** ERROR **    #0 Sql->query called at [D:xampphtdocsprojectorriamodelpersistenceSqlElement.php:666]
2014-04-11 10:33:40 ** ERROR **    #1 SqlElement->updateSqlElement called at [D:xampphtdocsprojectorriamodelpersistenceSqlElement.php:399]
2014-04-11 10:33:40 ** ERROR **    #2 SqlElement->saveSqlElement called at [D:xampphtdocsprojectorriamodelpersistenceSqlElement.php:308]
2014-04-11 10:33:40 ** ERROR **    #3 SqlElement->save called at [D:xampphtdocsprojectorriamodelActivity.php:233]
2014-04-11 10:33:40 ** ERROR **    #4 Activity->save called at [D:xampphtdocsprojectorriatoolsaveObject.php:56]

or like this :

2014-04-11 10:20:36 ** ERROR ** Exception-[HY000] SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction
2014-04-11 10:20:36 ** ERROR **    For query : update planningelement set realEndDate='2014-04-11' , realDuration='2' , plannedWork='0.18' , leftWork='0' , realWork='0.18' , progress='100' , plannedCost='54' , leftCost='0' , realCost='54'  where id=1085
2014-04-11 10:20:36 ** ERROR **    Strack trace :
2014-04-11 10:20:36 ** ERROR **    #0 Sql->query called at [D:xampphtdocsprojectorriamodelpersistenceSqlElement.php:666]
2014-04-11 10:20:36 ** ERROR **    #1 SqlElement->updateSqlElement called at [D:xampphtdocsprojectorriamodelpersistenceSqlElement.php:399]
2014-04-11 10:20:36 ** ERROR **    #2 SqlElement->saveSqlElement called at [D:xampphtdocsprojectorriamodelpersistenceSqlElement.php:308]
2014-04-11 10:20:36 ** ERROR **    #3 SqlElement->save called at [D:xampphtdocsprojectorriamodelPlanningElement.php:318]
2014-04-11 10:20:36 ** ERROR **    #4 PlanningElement->save called at [D:xampphtdocsprojectorriamodelPlanningElement.php:513]
2014-04-11 10:20:36 ** ERROR **    #5 PlanningElement->updateSynthesisObj called at [D:xampphtdocsprojectorriamodelPlanningElement.php:531]
2014-04-11 10:20:36 ** ERROR **    #6 PlanningElement->updateSynthesis called at [D:xampphtdocsprojectorriamodelAssignment.php:150]
2014-04-11 10:20:36 ** ERROR **    #7 Assignment->save called at [D:xampphtdocsprojectorriamodelAssignment.php:228]
2014-04-11 10:20:36 ** ERROR **    #8 Assignment->saveWithRefresh called at [D:xampphtdocsprojectorriatoolsaveImputation.php:100]

We are using a MySQL 5.0.51a server.

regards.


 
Posted : 14 Apr 2014 13H50
(@babynus)
Posts: 14952
Member Admin
 

It seem you have an issue with locking policy or timeout.

Locking policy could be pessimisting, so that you lock table on every update.
And/or timeout is (much) too small.


 
Posted : 14 Apr 2014 15H25
Iaurkano
(@iaurkano)
Posts: 104
Active Member
Topic starter
 

so, if i anderstand well, it's a Database configuration issue ?

i'm right ?

thank's. .


 
Posted : 14 Apr 2014 16H14
(@babynus)
Posts: 14952
Member Admin
 

Yes.
1) message "Lock wait timeout exceeded" is quite clear
2) no issue for all other users


 
Posted : 14 Apr 2014 16H45
Iaurkano
(@iaurkano)
Posts: 104
Active Member
Topic starter
 

But, as far as i know this message appear only on row lock not on table lock.

timeout is set to default value : 50 seconds, there is probably another issue which generate this one.

i'm investigating..


 
Posted : 14 Apr 2014 17H27
(@babynus)
Posts: 14952
Member Admin
 

Found some hint here :
http://www.tonyspencer.com/2008/10/23/if-you-get-this-in-mysql-lock-wait-timeout-exceeded-try-restarting-transaction/

innodb_lock_wait_timeout = 500


 
Posted : 14 Apr 2014 17H32
Iaurkano
(@iaurkano)
Posts: 104
Active Member
Topic starter
 

Yes but, very strange to need to increase this time out, because the current value 50 seconds seems to be huge for an update or one record.

In my case, this appears when i want to update a status in an activity.

thank's,


 
Posted : 14 Apr 2014 19H03
Iaurkano
(@iaurkano)
Posts: 104
Active Member
Topic starter
 

last information

i restarted the apache server, and the message does not appear any more.

i'm going to migrate to 4.2.2 version and will check if the issue still present.

So it seems it's not a Database issue.....

see you...


 
Posted : 14 Apr 2014 19H42
(@babynus)
Posts: 14952
Member Admin
 

i restarted the apache server, and the message does not appear any more.

So possibly you has some existing PHP session with not comitted transaction locking some tables.

So it seems it's not a Database issue.....

Possibly you have some configuration that enables to have very long peristent transaction (no timeout ?)

i'm going to migrate to 4.2.2 version and will check if the issue still present.

Latest version is 4.2.3 😉


 
Posted : 14 Apr 2014 21H06
Iaurkano
(@iaurkano)
Posts: 104
Active Member
Topic starter
 

After investigation, i found how to generate the problem :

1- i perform multiple updates, for activity status (at least) .
2- an error occurs during multiple update because a status cannot be changed because of the workflow. In the 3.4.4 version, Projectorria does not indicate any errors, the hourglass stay indefinitely, and i must close firefox to exit projectorria. after reconnection I get the MySQL Error, on the record where the error occurs.

This issue does not appear with 4.2.2, so i m going to migrate ASAP.

Hi all.


 
Posted : 15 Apr 2014 17H10
Share:

Scroll to Top