I have a CM and 2 CDs like so:
___ CD1 (web1, core) CM (master, core, web1, web2) ____/ \___ CD2 (web2, core2)
core is shared by CM and CD1, but not CD2.
When I publish from CM to both CDs, Sitecore "knows" to put the
publish:end:remote event in both web1 and web2 database EventQueue tables. It does not put it in the
core EventQueue table, which is the default eventing provider as defined in the config:
<eventing defaultProvider="sitecore"> <providers> <clear/> <add name="sitecore" type="Sitecore.Eventing.EventProvider, Sitecore.Kernel" systemDatabaseName="core"/> </providers> ... </eventing>
publish:complete:remote event does not behave the same way: it goes straight to the
core database EventQueue table.
I've tried decompiling the Sitecore assemblies and can't find where there's any kind of switch that says "raise event X in database Y". It's just "raise event X". I'm sure I'm missing something.