[Bug 675] New: Add support for onBeforeCommit, onCommit and onAfterCommit

View: New views
9 Messages — Rating Filter:   Alert me  

[Bug 675] New: Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675

           Summary: Add support for onBeforeCommit, onCommit and
                    onAfterCommit
           Product: Helma
           Version: CVS trunk
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P5
         Component: Database Layer
        AssignedTo: helma-dev@...
        ReportedBy: lists@...


Created an attachment (id=118)
 --> (http://dev.helma.org/bugs/attachment.cgi?id=118)
Patch to add onBeforeCommit, onCommit and onAfterCommit callbacks.

For a feature I added to my CMS I needed the onBeforeCommit handler. In order
to submit this in a way that makes sense for Helma I figured I should add the
others as well.

Just like for the NodeChangeEvent, the following arguments are passed to
onCommit if it is defined: inserted, updated, deleted, parents (all arrays of
nodes). onBeforeCommit and onAfterCommit do not receive arguments.

I think the performance impact is minimal when these handlers are not defined.

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675


Hannes Wallnoefer <hannes@...> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hannes@...




--- Comment #1 from Hannes Wallnoefer <hannes@...>  2009-08-12 12:35:30 ---
I'm fine with the feature per se, but we should wrap the invocations into
try/catches so errors in the handler functions are just logged and don't kill
the transaction.

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675





--- Comment #2 from Juerg Lehni <lists@...>  2009-08-12 14:15:57 ---
Created an attachment (id=119)
 --> (http://dev.helma.org/bugs/attachment.cgi?id=119)
Updated patch with exception logging.

That makes a lot of sense. Here the updated patch.

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675





--- Comment #3 from tobi <interface@...>  2009-09-24 10:00:23 ---
*** Bug 648 has been marked as a duplicate of this bug. ***

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675





--- Comment #4 from Juerg Lehni <lists@...>  2009-11-16 14:49:22 ---
Shall I commit this too?

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675





--- Comment #5 from Hannes Wallnoefer <hannes@...>  2009-11-17 11:09:41 ---
I'm a bit ambivalent on adding not one, but three hooks on each commit. Have
you looked at how this affects performance with and without the hooks defined?
We're calling (or trying to call) the hooks on every request, after all.

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675


Maksim Lin <maksim.lin@...> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |maksim.lin@...




--- Comment #6 from Maksim Lin <maksim.lin@...>  2009-11-18 23:50:13 ---
I'm concerned about impact on performance too.
On the other hand I'd would be nice to have as a simple way of for instance
handling updating a FT index (eg. lucene) right after a successful commit into
the DB. But from the described changes I don't think this would work as
onAfterCommit would not be passed the relevant params ?

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675





--- Comment #7 from Hannes Wallnoefer <hannes@...>  2009-11-25 15:40:27 ---
I think this would be easier to agree on if there was just the one onCommit
callback, or maybe two - onBeforeCommit and onAfterCommit, both called with the
inserted/updated/deleted nodes as arguments. What do you think?

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev

[Bug 675] Add support for onBeforeCommit, onCommit and onAfterCommit

by Bugzilla from bugzilla-daemon@helma.at :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

http://dev.helma.org/bugs/show_bug.cgi?id=675





--- Comment #8 from Maksim Lin <maksim.lin@...>  2009-11-25 22:34:49 ---
I would be very happy with that Hannes.
onAfterCommit() would cover use cases like the one I mentioned, as it would
allow you to write actions that happenafter a successfully DB commit.
While onBeforeCommit() would allow you to write code that does checks of the
data about to be committed (eg. special validation) that could then abort the
transaction before the DB commit takes place.

--
Configure bugmail: http://dev.helma.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Helma-dev mailing list
Helma-dev@...
http://helma.org/mailman/listinfo/helma-dev