...adjusting TCP settings on OS level can avoid this issue...but this change on OS level will affect also all other non-Oracle processes which also run on the same server. On Wed, Jul 15, 2009 at 5:19 PM, Dan Norris <dannorris@xxxxxxxxxxxxx> wrote: > Charles, > > I think LOAD_BALANCE is ON by default when you have multiple ADDRESS lines. > You'd have to do some client-side tracing to see for sure (not sure if it > requires the DESCRIPTION_LIST to be present or not). > > If LOAD_BALANCE is ON, then it may choose one of the standby listeners. > Once there, the standby listener will need to have instance registrations > from the primary site so that the standby listener can direct the client to > one of the primary listeners. Just make sure that remote_listeners on both > primary and standby have all 4 listeners listed in them. > > What would concern me is the case where the primary site is completely > unavailable--isn't it possible that a client would attempt to contact the > primary site and experience a tcp timeout (multiple minutes or more > possibly)? When the primary site really, really fails, the VIPs won't be > available and that could be a large delay before the client gives up (that's > what VIPs were intended to prevent). > > Dan > > > On Wed, Jul 15, 2009 at 9:37 AM, Charles Schultz <sacrophyte@xxxxxxxxx>wrote: > >> I filed a case with Oracle and did some minor testing - my biggest >> roadblock is that I do not yet have a test system with both the DG broker >> and RAC, I have one for each. >> So, I will throw this out there and hope that someone with a >> DG-broker-enabled RAC environment can verify. =) I have yet to find any >> documents that puts these two concepts together. My ears/eyes are open to >> recommendations. >> >> I tried with multiple DESCRIPTIONs (ie, in order to have different >> LOAD_BALANCE or FAILOVER_MODE parameters), but apparently TAF works best >> with one. Expounding on Jeremy's connection string (as well as the ones >> mentioned in the metalink notes), one can throw all nodes that provide the >> listed service in one ADDRESS_LIST, whether they be standby or clustered. >> The key part is a database trigger that turns off the service for standby >> instances such that the LOAD_BALANCE option will never even consider the >> listener on that node since PMON will not communicate anything about the >> service. >> >> >> (DESCRIPTION = >> >> (ADDRESS_LIST = >> >> (ADDRESS=(PROTOCOL=TCP)(HOST=primary1-vip.your.com)(PORT=1521)) >> >> (ADDRESS=(PROTOCOL=TCP)(HOST=primary2-vip.your.com)(PORT=1521)) >> >> (ADDRESS=(PROTOCOL=TCP)(HOST=standby1-vip.your.com)(PORT=1521)) >> >> (ADDRESS=(PROTOCOL=TCP)(HOST=standby2-vip.your.com)(PORT=1521)) >> >> ) >> >> (CONNECT_DATA = >> >> (SERVER=DEDICATED) >> >> (SERVICE_NAME=OMNI-SERVICE) >> >> (FAILOVER_MODE = >> >> (TYPE=session) >> >> (METHOD=BASIC) >> >> (RETRIES=180) >> >> (DELAY=1) >> >> ) >> >> ) >> >> ) >> >> >> >> >> *References:* >> Metalink note >> 461874.1<https://metalink2.oracle.com/metalink/plsql/f?p=130:14:2134483772446290257::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,461874.1,1,1,1,helvetica>"Failover >> Connections for Data Guard Error with ORA-1033" >> Metalink note >> 316740.1<https://metalink2.oracle.com/metalink/plsql/f?p=130:14:2134483772446290257::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,316740.1,1,1,1,helvetica>"How >> to configure to let TAF work after Data Guard Switchover or Failover" >> Client Failover in Data Guard Configurations for Highly Available Oracle >> Databases >> <http://www.oracle.com/technology/deploy/availability/pdf/MAA_WP_10gR2_ClientFailoverBestPractices.pdf> >> >> >> >> On Mon, Jun 22, 2009 at 11:52, Jeremy Schneider < >> jeremy.schneider@xxxxxxxxxxxxxx> wrote: >> >>> "Server-side TAF" is a reference to storing the TAF configuration info in >>> the server, and having the client pull it down at connect-time. Not well >>> documented, but very interesting. Look out for surprising rules of >>> precedence - the server configuration always over-rides the client >>> tnsnames.ora! >>> >>> See also: >>> >>> http://www.ardentperf.com/2007/03/29/centralized-taf-configuration-in-10g-part-2/ >>> >>> I've configured TAF for automatic failover to a standby (along with >>> dataguard broker automatic failover) -- but I haven't configured TAF for >>> both RAC and DG in the same database. It would be cool to hear if someone >>> else out there on the list has done this. :) >>> >>> -Jeremy >>> >>> >>> On Fri, Jun 19, 2009 at 3:03 PM, Charles Schultz >>> <sacrophyte@xxxxxxxxx>wrote: >>> >>>> For #2, I do see table >>>> 95-3<http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28419/d_serv.htm#sthref5797>, >>>> but I missed how it specified "server-side TAF". How does a >>>> *server*transparently failover? >>>> >>>> >>>> On Fri, Jun 19, 2009 at 14:56, Charles Schultz <sacrophyte@xxxxxxxxx>wrote: >>>> >>>>> >>>>> 2) Similar to this, I am trying to understand the different TAF >>>>> parameters used in >>>>> dbms_service.create_service<http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_serv.htm#i1001480>. >>>>> The documentation has very little to say about them (just the bare bones - >>>>> the 11g >>>>> documentation<http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28419/d_serv.htm#sthref7056>is >>>>> exactly the same I think), and when one implicitly creates a service by >>>>> modifying the SERVICE_NAMES parameter, all the parameters default to null >>>>> (according to dba_services). Are those TAF parameters actually used, or >>>>> are >>>>> they merely place-holders for "future" functionality? If they do play a >>>>> role >>>>> in TAF, what and how? >>>>> >>>>> >>> >>> >>> -- >>> Jeremy Schneider >>> Chicago, IL >>> http://www.ardentperf.com/category/technical >>> >>> >> >> >> -- >> Charles Schultz >> > >