So I've got two servers, we'll call them Server A and Server B.
Server A has a table, Table 1, which gets replicated to Server B.
Server B has a table, Table 2, which gets replicated to Server A.
All replication is transactional and pushed from the publisher continuously.
On Server B, there is a trigger on Table 1 which will ultimately create a record in Table 2.
Other various processes also create additional records in Table 2. All of the records in Table 2 are supposed to get replicated back to Server A.
In short, the data from Server A, Table 1 is supposed to make a round trip back to Server A in table 2 along with other records. However only the 'other records' are coming back. None of the data which originated on Server A is coming through, even though it's been successfully inserted into Table 2 on Server B.
When I generate a new snapshot all those records that didn't replicate are included in the snapshot and do get replicated over. My suspicions lie in what's happening behind the scenes when the trigger fired by replication inserts the data into Table 2 and perhaps something is preventing those records from replicating over.
The trigger looks something like:
Create Trigger [dbo].[trg_INS_TableA] For Insert As Declare @<Various Parameters> Select @<Various Parameters> = <Record Data> From inserted Declare @RC Int Exec @RC = [MyDB].[dbo].[up_INS_TableB] @<Various Parameters>
And up_INS_TableB transforms and inserts the Table A data into Table B