On Aug 12, 2015, at 10:28 AM, Stephen J. Turnbull wrote:

>The big problem is that as Simon points out we no longer have a truly
>centralized database.  Each component now keeps user information
>related to itself, but it's not communicated across the components
>very well.

This is true, and it bites us via the user database.  This recently came up in
a conversation about the authenticating proxy[1].  There has been discussion
about a centralized user database, and I think eventually we'll need something
like that, whether it's part of the core or a separate component.

>ISTM the core exports pretty good information, but it has no ability to grant
>privileges in the other components.  The other components are in a "pull"
>relationship with core, so core isn't really able to get information from
>them.  We need to think about providing better communication among the

Agreed.  Within the core, we have a set of events that get triggered when
certain things happen, like a user gets subscribed to a mailing list, etc.
What we could do is set up a pubsub that gets notified when these events
happen, so Postorius or any other component can be notified when the user
database gets updated.

>I wonder if we might not have been better off using an object-oriented
>database like MongoDB for the core.  That would allow adding
>components from external sources as the external sources require.

Perhaps, but for now that ship has sailed.  It's certainly not a good idea for
non-core components to be mucking about in the SQL database.  Let's think
about the APIs we'd need to build to provide better communication between


[1] https://gitlab.com/astuart/mailmania

Attachment: pgpdlTttYEcL1.pgp
Description: OpenPGP digital signature

Mailman-Developers mailing list
Mailman FAQ: http://wiki.list.org/x/AgA3
Searchable Archives: 

Security Policy: http://wiki.list.org/x/QIA9

Reply via email to