On January 27th, this site will be read-only as we migrate to Oracle Forums for an improved community experience. You will not be able to initiate activity until January 30th, when you will be able to use this site as normal.

    Forum Stats

  • 3,889,534 Users
  • 2,269,755 Discussions
  • 7,916,775 Comments

Discussions

replication: who initiates connection?

Bill Torpey
Bill Torpey Member Posts: 20
edited May 12, 2016 10:53AM in TimesTen In-Memory Database

We're using replication with active-standby pairs with one (or more) read-only subscribers.

The question is: who initiates the TCP connection, specifically re: read-only subscriber?  Does the master poll for the subscriber?  Or is it listening for a connection from the subscriber?  Or both?

I've looked in docs and the forum and cannot find any mention of this.

Thanks in advance!

Best Answer

  • ChrisJenkins-Oracle
    ChrisJenkins-Oracle Senior Director, In-Memory Technology United KingdomMember Posts: 3,412 Employee
    edited May 12, 2016 3:35AM Answer ✓

    Each database has both transmitter and receiver threads (even if it is a read-only subscriber); the transmitters always initiate the connections. So every database will initiate connections and if this is blocked (e.g. by a firewall) then replication will not function. A good reason to use fixed ports for replication so that you know what port to open in the firewall.

    Chris

    Bill Torpey

Answers

  • ChrisJenkins-Oracle
    ChrisJenkins-Oracle Senior Director, In-Memory Technology United KingdomMember Posts: 3,412 Employee
    edited May 12, 2016 3:35AM Answer ✓

    Each database has both transmitter and receiver threads (even if it is a read-only subscriber); the transmitters always initiate the connections. So every database will initiate connections and if this is blocked (e.g. by a firewall) then replication will not function. A good reason to use fixed ports for replication so that you know what port to open in the firewall.

    Chris

    Bill Torpey
  • Bill Torpey
    Bill Torpey Member Posts: 20
    edited May 12, 2016 9:48AM

    Thanks Chris!

    A followup question if I may:  the docs say that dynamic port assignment is recommended.  Any particular reason for that (other than ease of use)?

  • ChrisJenkins-Oracle
    ChrisJenkins-Oracle Senior Director, In-Memory Technology United KingdomMember Posts: 3,412 Employee
    edited May 12, 2016 10:38AM

    Hmm, that is not our best practice recommendation! Can you please point me to where in the doc it says that so I can get it corrected. Explicit (static) ports (via the STORE clause) are highly recommended for production environments because:

    a)    They make it much easier if you have to configure things like firewalls

    b)    They enable much easier upgrades across major release boundaries. Such upgrades are much more difficult if dynamic ports are used.

    Chris

  • Bill Torpey
    Bill Torpey Member Posts: 20
    edited May 12, 2016 10:53AM

    In the replication guide for version 7 (yes I know...), under "Setting STORE attributes": "While static port assignment is allowed by TimesTen, dynamic port allocation is recommended.".

    The replication guide for 11g has the opposite, under "Port Assignments": " Static port assignments are recommended. "

This discussion has been closed.