Finding DB transaction sources

I'm trying to debug a gateway that someone else did dev work on and there are several transaction timeout events from transactions that haven't been closed properly. Is there a way to tell the project these transactions are in?

Short of going through every project and finding system.db.beginTransaction then looking for a closeTransaction I can't think of a way to do this.

Thanks!

I think you are stuck. You will have to do a manual search. In particular, you will need to look to make sure all error handling has the dual java/jython clauses leading to rollback on errors. That is, there probably is a .closeTransaction() that isn't being called.

1 Like

FWIW you can open the parent ignition/data folder (file system) in VSCode and use the :magnifying_glass_tilted_left: icon on the left to search all projects at once. It’s often faster/more thorough than built-in find/replace even for individual projects. I’m sure there are other tools that do the same.

Of course this is useless for binary-encoded vision resource blobs and gateway scripts but works with vision xml and perspective json