Skip to Content.
Sympa Menu

grouper-dev - notifications / change log

Subject: Grouper Developers Forum

List archive

notifications / change log

Chronological Thread 
  • From: Chris Hyzer <>
  • To: "" <>
  • Subject: notifications / change log
  • Date: Fri, 8 May 2009 01:41:29 -0400
  • Accept-language: en-US
  • Acceptlanguage: en-US


I have started work on grouper notifications. Per discussions at the member
meeting, here is the current design (actually, not everything here was
discussed... :) ):

- Have a change_log table of changes in Grouper (this is similar to my
previous thought, though there wont be a row for each consumer)

- Generally there will be a row inserted for each insert/delete/columnChange
in a grouper table (not including other auditing tables etc)

- Will have a way to customize which events get inserted into the change log,
and which don't

- Change log entries will have a millis since 1970 column, which orders the
entries. I will probably put a second column which will by default be blank
which can be changed into a database specific sequence/index if the
institution desires

- There wont be a uuid for each row so that we can do ""
queries easily. For instance of you rename a group, or to efficiently insert
effective memberships

- I still think we can have a "notification" table which keeps track of
consumers, and their last successfully consumption timestamp (if they are
registered for Grouper to keep track). Though this is obviously lower

- Consumers will not delete from the table. There will be a job which
deletes old data (sites configure their definition of "old")

- We will try to give as much information as possible so that it doesn't need
to be queried. i.e. for memberships we can keep the following information on
an update:

- membershipId
- ownerId (group or stem id)
- ownerName (group or stem name)
- memberId
- subjectId
- sourceId
- field name
- field type
- membershipType (effective/immediate/composite)
- fieldNameChanged
- oldValue

Those are fields specific to membership updates, common fields are:

- createdOn (millis since 1970)
- sequenceNumber (optional)
- changeLogTypeId (uuid reference to grouper_change_log_type, which says
this is a membership entry, and an update)
- contextId (to tie back to who did it, from where, with what, etc)

Let me know if you have feedback. I will put this into the wiki soon.


  • notifications / change log, Chris Hyzer, 05/08/2009

Archive powered by MHonArc 2.6.16.

Top of Page