Anonymous | Login
Project:
RSS
  
News | My View | View Issues | Roadmap | Summary

View Issue DetailsJump to Notes ] Issue History ] Print ]
ID
0029611
TypeCategorySeverityReproducibilityDate SubmittedLast Update
design defect[Openbravo ERP] A. Platformmajorhave not tried2015-04-16 16:002022-02-01 08:08
ReporterAugustoMauchView Statuspublic 
Assigned ToTriage Platform Base 
PrioritynormalResolutionopenFixed in Version
StatusacknowledgedFix in branchFixed in SCM revision
ProjectionnoneETAnoneTarget Version
OSAnyDatabaseAnyJava version
OS VersionDatabase versionAnt version
Product VersionSCM revision 
Review Assigned To
Web browser
ModulesCore
Regression level
Regression date
Regression introduced in release
Regression introduced by commit
Triggers an Emergency PackNo
Summary

0029611: The way we disable triggers with TriggerHandler may lead to leaving the triggers disabled indefinitly

DescriptionIf for whatever reason TriggerHandler.getInstance().disable() is invoked, but the transaction is commited before executing TriggerHandler.getInstance().enable(), the database triggers would be left disabled.

In that case, a row would be committed to the AD_SESSION_STATUS table that would prevent the triggers from being executed. This problem would persist until a transaction is commited having executed TriggerHandler.getInstance().enable().
Steps To ReproduceThe following actions lead to leaving the database triggers disabled:
- TriggerHandler.getInstance().disable() is invoked
- For whatever reason (it is missing, or not properly handled in a finally block, etc), TriggerHandler.getInstance().enable() is not invoked
- The DAL transaccion is commited
TagsNo tags attached.
Attached Files

- Relationships Relation Graph ] Dependency Graph ]
related to defect 0029632 closedtegik_forge Openbravo Localizations Error found in "Adaptación WebPOS para factura electrónica" module 
related to defect 0030174RR15Q3 closedmtaal Retail Modules Triggers temporarily disabled for whole application through webpos 

-  Notes
(0083606)
AugustoMauch (administrator)
2016-01-26 09:57

Severity downgraded to Major, as the main flow where this happened was fixed in the issue [1]

[1] https://issues.openbravo.com/view.php?id=30174 [^]
(0083607)
AugustoMauch (administrator)
2016-01-26 09:59

Issue [1] prevents the problem from happening when the connection is closed using the SessionHandler.commitAndClose and SessionHandler.commitAndStart methods, but not when the commit method is invoked directly on the connection. This case can probably be covered using the Apache JDBC Connection Pool by implementing an interceptor [2]

[1] https://issues.openbravo.com/view.php?id=30174 [^]
[2] https://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html#Interceptors [^]
(0097472)
alostale (manager)
2017-06-19 09:29

A simple solution to analyze might be to add a trigger to AD_SESSION_STATUS so that in case trx is committed having triggers disabled, it transparently would reset it.

- Issue History
Date Modified Username Field Change
2015-04-16 16:00 AugustoMauch New Issue
2015-04-16 16:00 AugustoMauch Assigned To => platform
2015-04-16 16:00 AugustoMauch Modules => Core
2015-04-16 16:00 AugustoMauch Triggers an Emergency Pack => No
2015-05-15 10:00 AugustoMauch Issue Monitored: alostale
2015-05-15 10:00 AugustoMauch Review Assigned To => alostale
2015-05-15 11:01 AugustoMauch Issue End Monitor: alostale
2015-05-15 11:01 AugustoMauch Review Assigned To alostale =>
2015-05-15 14:17 ngarcia Relationship added related to 0029632
2015-05-15 14:20 ngarcia Issue Monitored: ngarcia
2015-05-15 14:21 ngarcia Severity major => critical
2016-01-26 09:56 AugustoMauch Relationship added related to 0030174
2016-01-26 09:57 AugustoMauch Note Added: 0083606
2016-01-26 09:57 AugustoMauch Severity critical => major
2016-01-26 09:59 AugustoMauch Note Added: 0083607
2017-06-19 09:29 alostale Note Added: 0097472
2017-06-19 09:29 alostale Status new => acknowledged
2022-02-01 08:08 alostale Assigned To platform => Triage Platform Base


Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker