Adding new scan listener

Hi
when i installed 11.2 rac, I only had one ip assigned to the scan in dns, so I have ended up with one scan listener listener_scan1
i have allocated second ip to the scan name in dns but struggling to get the second scan listener up and running.
srvctl config scan
SCAN VIP name: scan1, IP: /*****/****
SCAN VIP name: scan2, IP: /*****/****
i have also manually added entry to $grid_homenetwork/admin/listener.ora
LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))) # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent
do i need to make any other changes?

Levi Pereira wrote:
Hi,
i have also manually added entry to $grid_homenetwork/admin/listener.oraDid you use this command create new scan_listener?
srvctl add scan_listener
Regards,
Levi Pereirathe command initially failed wth error saying scan listener already exists...I fixed the issue by stopping the listener_scan1 , doing srvctl remove to remove scan listener then did srvctl add scan.... which created 2 listeners this time and all working ... i guess srvctl checks the dns and creates as many as listeners as required ( depending on number of ip's configured in dns)
thanks anyway

Similar Messages

  • Add new scan name

    Greetings to my fellows DBA .
    does any of you know (I now there is a way but not sure of it) to add another scan name and listeners (resolving to it's own ip address) in cluster 11.2. ?..
    I need it to simulate separation of environments .
    thanks
    S.

    Sahar wrote:
    a way to simulate two separate environments with different networksWhy? To achieve what? What is the network architecture? Why is routing not enabled and why does the cluster need to run on two distinct networks?
    What needs separation? At what level? Wire packet level? Application/database level?
    each scan hopefully will register with different listeners (ill have few databases on same cluster)SCAN means Single Client Access Name. Not mutiple names. It is a single hostname that resolves to one or more IP addresses - where these IP addresses are managed by the cluster as virtual IPs running "remote" listeners.
    A client does not directly connect to a SCAN IP for a database connection - it connects to a SCAN IP that redirects that client to the applicable cluster VIP (local) listener that can pass that connection to a dedicated server process, or a dispatcher process.
    So instead of presenting a half baked idea of "+adding new scan names+" as the solution to an unknown problem - how about defining the problem instead?

  • How to start the SCAN listener on new 11Gr2 install?

    Ok...starting dbca on first RAC install on the new 11Gr2 cluster.
    I was about to proceed from screen 3 to 4...and it comes up with an error saying the SCAN listener hasn't been started.
    I started what I thought was the listener with lsrnctl start...but apparently that isn't enough.
    What do I do to start the SCAN listener? I'm still a bit hazy on what this is for.....
    Thanks in advance,
    cayenne

    Man..there just is NOT a lot of good, easy to find direct documentation on this.
    I found this document that had some srvctl instructions:
    How to update the IP address of the SCAN VIP resources (ora.scan.vip) [ID 952903.1]
    And from there...I tried experimentingL
    # $GRID_HOME/bin/srvctl stop scan_listener
    # $GRID_HOME/bin/srvctl stop scan
    # $GRID_HOME/bin/srvctl status scan
    I did:
    [oracle@node1 bin]$ ./srvctl status scan
    SCAN VIP scan1 is enabled
    SCAN VIP scan1 is not running
    SCAN VIP scan2 is enabled
    SCAN VIP scan2 is not running
    SCAN VIP scan3 is enabled
    SCAN VIP scan3 is not running
    [oracle@node1 bin]$ ./srvctl start scan
    [oracle@node1 bin]$ ./srvctl status scan
    SCAN VIP scan1 is enabled
    SCAN VIP scan1 is running on node node5
    SCAN VIP scan2 is enabled
    SCAN VIP scan2 is running on node node3
    SCAN VIP scan3 is enabled
    SCAN VIP scan3 is running on node node4
    Trying to start the scan listener:
    [oracle@node1 bin]$ ./srvctl status scan_listener
    SCAN Listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is not running
    SCAN Listener LISTENER_SCAN2 is enabled
    SCAN listener LISTENER_SCAN2 is not running
    SCAN Listener LISTENER_SCAN3 is enabled
    SCAN listener LISTENER_SCAN3 is not running
    [oracle@node1 bin]$ ./srvctl start scan_listener
    [oracle@node1 bin]$ ./srvctl status scan_listener
    SCAN Listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is running on node node1
    SCAN Listener LISTENER_SCAN2 is enabled
    SCAN listener LISTENER_SCAN2 is running on node node3
    SCAN Listener LISTENER_SCAN3 is enabled
    SCAN listener LISTENER_SCAN3 is running on node node4
    So...it appears I figured how to get scan and the scan listener running.
    I'm guessing I need to do some form of the srvctl add....I found this:
    http://download.oracle.com/docs/cd/E11882_01/rac.112/e10718/srvctladmin.htm#CDDEEBCH
    On it, I found the generic instructions for add:
    srvctl add scan
    Adds Oracle Clusterware resources for the given SCAN. This command creates the same number of SCAN VIP resources as the number of IP addresses that SCAN resolves to, or 3 when network_number identifies a DHCP network and Oracle GNS configuration.
    Note:
    This command is only available with Oracle Clusterware.
    Syntax and Options
    Use the srvctl add scan command with the following syntax:
    srvctl add scan -n scan_name [-k network_number]
    [-S subnet/netmask[/if1[|if2|...]]]
    Table A-14 srvctl add scan Options
    Option      Description
    -n scan_name
    A fully qualified host name, which includes the domain name.
    -k network_number
    The optional network number from which SCAN VIPs are obtained. If not specified, the SCAN VIPs are obtained from the same default network from which the nodeapps VIP is obtained.
    -S subnet/netmask
    [if1 [|if2|...]]
    Creates the network_number. This option must be specified when network_number does not exist.
    Example
    An example of this command is:
    # srvctl add scan -n scan.mycluster.example.com
    srvctl add scan_listener
    Adds Oracle Clusterware resources to the SCAN listeners. The number of SCAN listener resources created is the number of SCAN VIP resources.
    Note:
    This command is only available with Oracle Clusterware.
    Syntax and Options
    Use the srvctl add scan_listener command with the following syntax:
    srvctl add scan_listener [-l lsnr_name_prefix] [-s]
    [-p "[TCP:]port_list[IPC:key][NMP:pipe_name][TCPS:s_port] [SDP:port]"]
    Table A-15 srvctl add scan_listener Options
    Option      Description
    -l lsnr_name_prefix
    The SCAN listener name prefix.
    -s
    Use the -s option to skip checking of the ports.
    -p "[TCP:]port_list
    [IPC:key][NMP:pipe_name]
    [TCPS:s_port]
    [SDP:port]"
    Protocol specifications for the listener. port_list is a comma-delimited list of TCP ports or listener endpoints.
    If this option is not specified, then the default TCP port of 1521 is used.
    Example
    An example of this command is:
    # srvctl add scan_listener -l myscanlistener
    So, if I understand this correctly, to get scan and scan listener to autostart on boot I do something like this?
    If my SCAN name is database-scan
    I'd need to do srvctl add scan -n database-scan ?
    For the scan listener, from the instructions it sounds like I can name it anything I want...is that correct...?
    So I could do something like
    srvctl add scan_listener -l fred ?
    Thanks in advance for any suggestions. (Ok, not going to really name it fred)
    cayenne

  • Ora-12514 connect to SCAN listener in dataguard RAC environment

    I have two rac nodes datase on linux and two rac standby database also.
    Here are what I got when I try to connect to scan listener from client. It connects to vip/or scan ip addresses without any problem.
    sqlplus system/password@wxcy
    SQL*Plus: Release 10.2.0.3.0 - Production on Wed Mar 14 18:42:42 2012
    Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
    ERROR:
    ORA-12154: TNS:could not resolve the connect identifier specified
    But when I log in to the ip address of the scan listener, it worked:
    sqlplus system/[email protected]:1521/wxcy
    SQL*Plus: Release 10.2.0.3.0 - Production on Wed Mar 14 18:43:12 2012
    Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
    Data Mining and Real Application Testing options
    SQL>
    Here is the tnsnames.ora on the client:
    wxcy =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)
    (HOST = scan.com)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = wxcy)
    Here are listener.ora and tnsnames.ora on the server:
    LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent
    LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3)))) # line added by Agent
    LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))) # line added by Agent
    LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (GLOBAL_DBNAME = wxcy_DGMGRL)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (SID_NAME = wxcy1)
    SID_LIST_LISTENER_SCAN1 =
    (SID_LIST =
    (SID_DESC =
    (GLOBAL_DBNAME = wxcy)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (SID_NAME = wxcy1)
    SID_LIST_LISTENER_SCAN3 =
    (SID_LIST =
    (SID_DESC =
    (GLOBAL_DBNAME = wxcy)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (SID_NAME = wxcy1)
    INBOUND_CONNECT_TIMEOUT_LISTENER = 120
    ~
    tnsnames.ora:
    wxcy =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = scan.com)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = wxcy)
    wxcy_DGMGRL =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = scan.com)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = wxcy_DGMGRL)
    wxcy1 =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = scan.com)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)(SERVICE_NAME = wxcy)
    (INSTANCE_NAME = wxcy1)
    wxcy2 =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = scan.com)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)(SERVICE_NAME = wxcy)
    (INSTANCE_NAME = wxcy2)
    From node 2:
    LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))) # line added by Agent
    LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3)))) # line added by Agent
    LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent
    LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (GLOBAL_DBNAME = wxcy_DGMGRL)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (SID_NAME = wxcy1)
    SID_LIST_LISTENER_SCAN2 =
    (SID_LIST =
    (SID_DESC =
    (GLOBAL_DBNAME = wxcy)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (SID_NAME = wxcy2)
    SID_LIST_LISTENER_SCAN3 =
    (SID_LIST =
    (SID_DESC =
    (GLOBAL_DBNAME = wxcy)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (SID_NAME = wxcy2)
    I wonder why I can connect to the ip addresses of those scan listener but not the scan name.
    Thanks.

    Hello;
    This note may help :
    How to Troubleshoot Connectivity Issue with 11gR2 SCAN Name [ID 975457.1]
    Also I would check my DNS ( OK double check ) and each listener service as follows :
    lsnrctl service LISTENER_SCAN1
    ( and so on )
    Also
    Make sure a password file exists on on that node. ( A copy - Create new with Oracle 11 DG does not work )
    Best Regards
    mseberg
    Edited by: mseberg on Mar 14, 2012 5:10 PM

  • Difference between Scan Listener and Node listener

    Hi,
    I read the concept of SCAN in 11g R2 Grid Infrastructure. In that i come accross the below statements
    " 3 SCAN IP's and 3 SCAN Listeners will be up in the Cluster even if onlu ONE NODE IS UP with Clusterware active. This is BECAUSE SCAN listeners are not like NODE LISTENERS; they simply reroute connections so they do not need an instance to be available beneath them to make a database connections".
    Could some one please explan me the difference between Scan Listener and Node listener?
    Thanks in advance.
    Regards,
    Stephen

    The SCAN listener is the new feature in 11g. RAC in 9i and 10g had only node listeners. In earlier releases, the clients had to know each of the node listeners and define load balancing / failover between the node listener.
    Each node in the RAC cluster has a TNS Listener listening on the VIP.
    The SCAN is a single cluster-wide listener (although actually running as three separate processes, one on each node).. The client now needs to know only the SCAN listener. It does not need information of the node listeners to be maintained in the client-side tnsnames.ora file. SCAN allows for automatic load balancing as the client is directed to the nodes that are "up and able to take new connections" only. Also, as new nodes are added to the cluster, SCAN keeps track of them, the client tnsnames.ora does not need to be updated for new nodes.
    Hemant K Chitale

  • TableSorter errors when adding new data

    so here is the deal:
    I am using the TableSorter.java helper class with DefaultTableModel
    from: http://java.sun.com/docs/books/tutorial/uiswing/components/table.html
    It works great when the data is static and I get it for the first time. however, occationally, when adding new data I get a NullPointerException error.
    in use:
    DefaultTableModel.addRow()
    DefaultTableModel.removeRow() and
    DefaultTableModel.insertRow() methods.
    Error:
    java.lang.ArrayIndexOutOfBoundsException: 5
         at com.shared.model.TableSorter.modelIndex(TableSorter.java:294)
         at com.shared.model.TableSorter.getValueAt(TableSorter.java:340)
         at javax.swing.JTable.getValueAt(Unknown Source)
         at javax.swing.JTable.prepareRenderer(Unknown Source)...
    code problem I:
        public Object getValueAt(int row, int column)
            return tableModel.getValueAt(modelIndex(row), column);
        }code problem II:
        public int modelIndex(int viewIndex)
                 return getViewToModel()[viewIndex].modelIndex;     
        }TableSroter class:
    package com.shared.model;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.*;
    import java.util.List;
    import javax.swing.*;
    import javax.swing.event.TableModelEvent;
    import javax.swing.event.TableModelListener;
    import javax.swing.table.*;
    * TableSorter is a decorator for TableModels; adding sorting
    * functionality to a supplied TableModel. TableSorter does
    * not store or copy the data in its TableModel; instead it maintains
    * a map from the row indexes of the view to the row indexes of the
    * model. As requests are made of the sorter (like getValueAt(row, col))
    * they are passed to the underlying model after the row numbers
    * have been translated via the internal mapping array. This way,
    * the TableSorter appears to hold another copy of the table
    * with the rows in a different order.
    * <p/>
    * TableSorter registers itself as a listener to the underlying model,
    * just as the JTable itself would. Events recieved from the model
    * are examined, sometimes manipulated (typically widened), and then
    * passed on to the TableSorter's listeners (typically the JTable).
    * If a change to the model has invalidated the order of TableSorter's
    * rows, a note of this is made and the sorter will resort the
    * rows the next time a value is requested.
    * <p/>
    * When the tableHeader property is set, either by using the
    * setTableHeader() method or the two argument constructor, the
    * table header may be used as a complete UI for TableSorter.
    * The default renderer of the tableHeader is decorated with a renderer
    * that indicates the sorting status of each column. In addition,
    * a mouse listener is installed with the following behavior:
    * <ul>
    * <li>
    * Mouse-click: Clears the sorting status of all other columns
    * and advances the sorting status of that column through three
    * values: {NOT_SORTED, ASCENDING, DESCENDING} (then back to
    * NOT_SORTED again).
    * <li>
    * SHIFT-mouse-click: Clears the sorting status of all other columns
    * and cycles the sorting status of the column through the same
    * three values, in the opposite order: {NOT_SORTED, DESCENDING, ASCENDING}.
    * <li>
    * CONTROL-mouse-click and CONTROL-SHIFT-mouse-click: as above except
    * that the changes to the column do not cancel the statuses of columns
    * that are already sorting - giving a way to initiate a compound
    * sort.
    * </ul>
    * <p/>
    * This is a long overdue rewrite of a class of the same name that
    * first appeared in the swing table demos in 1997.
    * @author Philip Milne
    * @author Brendon McLean
    * @author Dan van Enckevort
    * @author Parwinder Sekhon
    * @version 2.0 02/27/04
    public class TableSorter extends AbstractTableModel
        protected TableModel tableModel;
        public static final int DESCENDING = -1;
        public static final int NOT_SORTED = 0;
        public static final int ASCENDING = 1;
        private static Directive EMPTY_DIRECTIVE = new Directive(-1, NOT_SORTED);
        public static final Comparator COMPARABLE_COMAPRATOR = new Comparator()
            public int compare(Object o1, Object o2)
                return ((Comparable) o1).compareTo(o2);
        public static final Comparator LEXICAL_COMPARATOR = new Comparator()
            public int compare(Object o1, Object o2)
                return o1.toString().compareTo(o2.toString());
        private Row[] viewToModel;
        private int[] modelToView;
        private JTableHeader tableHeader;
        private MouseListener mouseListener;
        private TableModelListener tableModelListener;
        private Map columnComparators = new HashMap();
        private List sortingColumns = new ArrayList();
        public TableSorter()
            this.mouseListener = new MouseHandler();
            this.tableModelListener = new TableModelHandler();
        public TableSorter(TableModel tableModel)
            this();
            setTableModel(tableModel);
        public TableSorter(TableModel tableModel, JTableHeader tableHeader)
            this();
            setTableHeader(tableHeader);
            setTableModel(tableModel);
        private void clearSortingState()
            viewToModel = null;
            modelToView = null;
        public TableModel getTableModel()
            return tableModel;
        public void setTableModel(TableModel tableModel)
            if (this.tableModel != null)
                this.tableModel.removeTableModelListener(tableModelListener);
            this.tableModel = tableModel;
            if (this.tableModel != null)
                this.tableModel.addTableModelListener(tableModelListener);
            clearSortingState();
            fireTableStructureChanged();
        public JTableHeader getTableHeader()
            return tableHeader;
        public void setTableHeader(JTableHeader tableHeader)
            if (this.tableHeader != null)
                this.tableHeader.removeMouseListener(mouseListener);
                TableCellRenderer defaultRenderer = this.tableHeader.getDefaultRenderer();
                if (defaultRenderer instanceof SortableHeaderRenderer)
                    this.tableHeader.setDefaultRenderer(((SortableHeaderRenderer) defaultRenderer).tableCellRenderer);
            this.tableHeader = tableHeader;
            if (this.tableHeader != null)
                this.tableHeader.addMouseListener(mouseListener);
                this.tableHeader.setDefaultRenderer
                        new SortableHeaderRenderer(this.tableHeader.getDefaultRenderer())
        public boolean isSorting()
            return sortingColumns.size() != 0;
        private Directive getDirective(int column)
            for (int i = 0; i < sortingColumns.size(); i++)
                Directive directive = (Directive)sortingColumns.get(i);
                if (directive.column == column)
                    return directive;
            return EMPTY_DIRECTIVE;
        public int getSortingStatus(int column)
            return getDirective(column).direction;
        private void sortingStatusChanged()
            clearSortingState();
            fireTableDataChanged();
            if (tableHeader != null)
                tableHeader.repaint();
        public void setSortingStatus(int column, int status)
            Directive directive = getDirective(column);
            if (directive != EMPTY_DIRECTIVE)
                sortingColumns.remove(directive);
            if (status != NOT_SORTED)
                sortingColumns.add(new Directive(column, status));
            sortingStatusChanged();
        protected Icon getHeaderRendererIcon(int column, int size)
            Directive directive = getDirective(column);
            if (directive == EMPTY_DIRECTIVE)
                return null;
            return new Arrow(directive.direction == DESCENDING, size, sortingColumns.indexOf(directive));
        private void cancelSorting()
            sortingColumns.clear();
            sortingStatusChanged();
        public void setColumnComparator(Class type, Comparator comparator)
            if (comparator == null)
                columnComparators.remove(type);
            else
                columnComparators.put(type, comparator);
        protected Comparator getComparator(int column)
            Class columnType = tableModel.getColumnClass(column);
            Comparator comparator = (Comparator) columnComparators.get(columnType);
            if (comparator != null)
                return comparator;
            if (Comparable.class.isAssignableFrom(columnType))
                return COMPARABLE_COMAPRATOR;
            return LEXICAL_COMPARATOR;
        private Row[] getViewToModel()
            if (viewToModel == null)
                int tableModelRowCount = tableModel.getRowCount();
                viewToModel = new Row[tableModelRowCount];
                for (int row = 0; row < tableModelRowCount; row++)
                    viewToModel[row] = new Row(row);
                if (isSorting())
                    Arrays.sort(viewToModel);
            return viewToModel;
        public int modelIndex(int viewIndex)
                 return getViewToModel()[viewIndex].modelIndex;     
        private int[] getModelToView()
            if (modelToView == null)
                int n = getViewToModel().length;
                modelToView = new int[n];
                for (int i = 0; i < n; i++)
                    modelToView[modelIndex(i)] = i;
            return modelToView;
        // TableModel interface methods
        public int getRowCount()
            return (tableModel == null) ? 0 : tableModel.getRowCount();
        public int getColumnCount()
            return (tableModel == null) ? 0 : tableModel.getColumnCount();
        public String getColumnName(int column)
            return tableModel.getColumnName(column);
        public Class getColumnClass(int column)
            return tableModel.getColumnClass(column);
        public boolean isCellEditable(int row, int column)
            return tableModel.isCellEditable(modelIndex(row), column);
        public Object getValueAt(int row, int column)
            return tableModel.getValueAt(modelIndex(row), column);
        public void setValueAt(Object aValue, int row, int column)
            tableModel.setValueAt(aValue, modelIndex(row), column);
        // Helper classes
        private class Row implements Comparable
            private int modelIndex;
            public Row(int index)
                this.modelIndex = index;
            public int compareTo(Object o)
                int row1 = modelIndex;
                int row2 = ((Row) o).modelIndex;
                for (Iterator it = sortingColumns.iterator(); it.hasNext();)
                    Directive directive = (Directive) it.next();
                    int column = directive.column;
                    Object o1 = tableModel.getValueAt(row1, column);
                    Object o2 = tableModel.getValueAt(row2, column);
                    int comparison = 0;
                    // Define null less than everything, except null.
                    if (o1 == null && o2 == null)
                        comparison = 0;
                    } else if (o1 == null)
                        comparison = -1;
                    } else if (o2 == null)
                        comparison = 1;
                    } else {
                        comparison = getComparator(column).compare(o1, o2);
                    if (comparison != 0)
                        return directive.direction == DESCENDING ? -comparison : comparison;
                return 0;
        private class TableModelHandler implements TableModelListener
            public void tableChanged(TableModelEvent e)
                // If we're not sorting by anything, just pass the event along.            
                if (!isSorting())
                    clearSortingState();
                    fireTableChanged(e);
                    return;
                // If the table structure has changed, cancel the sorting; the            
                // sorting columns may have been either moved or deleted from            
                // the model.
                if (e.getFirstRow() == TableModelEvent.HEADER_ROW)
                    cancelSorting();
                    fireTableChanged(e);
                    return;
                // We can map a cell event through to the view without widening            
                // when the following conditions apply:
                // a) all the changes are on one row (e.getFirstRow() == e.getLastRow()) and,
                // b) all the changes are in one column (column != TableModelEvent.ALL_COLUMNS) and,
                // c) we are not sorting on that column (getSortingStatus(column) == NOT_SORTED) and,
                // d) a reverse lookup will not trigger a sort (modelToView != null)
                // Note: INSERT and DELETE events fail this test as they have column == ALL_COLUMNS.
                // The last check, for (modelToView != null) is to see if modelToView
                // is already allocated. If we don't do this check; sorting can become
                // a performance bottleneck for applications where cells 
                // change rapidly in different parts of the table. If cells
                // change alternately in the sorting column and then outside of            
                // it this class can end up re-sorting on alternate cell updates -
                // which can be a performance problem for large tables. The last
                // clause avoids this problem.
                int column = e.getColumn();
                if (e.getFirstRow() == e.getLastRow()
                        && column != TableModelEvent.ALL_COLUMNS
                        && getSortingStatus(column) == NOT_SORTED
                        && modelToView != null)
                    int viewIndex = getModelToView()[e.getFirstRow()];
                    fireTableChanged(new TableModelEvent(TableSorter.this,
                                                         viewIndex, viewIndex,
                                                         column, e.getType()));
                    return;
                // Something has happened to the data that may have invalidated the row order.
                clearSortingState();
                fireTableDataChanged();
                return;
        private class MouseHandler extends MouseAdapter
            public void mouseClicked(MouseEvent e)
                JTableHeader h = (JTableHeader) e.getSource();
                TableColumnModel columnModel = h.getColumnModel();
                int viewColumn = columnModel.getColumnIndexAtX(e.getX());
                int column = columnModel.getColumn(viewColumn).getModelIndex();
                if (column != -1)
                    int status = getSortingStatus(column);
                    if (!e.isControlDown())
                        cancelSorting();
                    // Cycle the sorting states through {NOT_SORTED, ASCENDING, DESCENDING} or
                    // {NOT_SORTED, DESCENDING, ASCENDING} depending on whether shift is pressed.
                    status = status + (e.isShiftDown() ? -1 : 1);
                    status = (status + 4) % 3 - 1; // signed mod, returning {-1, 0, 1}
                    setSortingStatus(column, status);
        private static class Arrow implements Icon
            private boolean descending;
            private int size;
            private int priority;
            public Arrow(boolean descending, int size, int priority)
                this.descending = descending;
                this.size = size;
                this.priority = priority;
            public void paintIcon(Component c, Graphics g, int x, int y)
                Color color = c == null ? Color.GRAY : c.getBackground();            
                // In a compound sort, make each succesive triangle 20%
                // smaller than the previous one.
                int dx = (int)(size/2*Math.pow(0.8, priority));
                int dy = descending ? dx : -dx;
                // Align icon (roughly) with font baseline.
                y = y + 5*size/6 + (descending ? -dy : 0);
                int shift = descending ? 1 : -1;
                g.translate(x, y);
                // Right diagonal.
                g.setColor(color.darker());
                g.drawLine(dx / 2, dy, 0, 0);
                g.drawLine(dx / 2, dy + shift, 0, shift);
                // Left diagonal.
                g.setColor(color.brighter());
                g.drawLine(dx / 2, dy, dx, 0);
                g.drawLine(dx / 2, dy + shift, dx, shift);
                // Horizontal line.
                if (descending) {
                    g.setColor(color.darker().darker());
                } else {
                    g.setColor(color.brighter().brighter());
                g.drawLine(dx, 0, 0, 0);
                g.setColor(color);
                g.translate(-x, -y);
            public int getIconWidth()
                return size;
            public int getIconHeight()
                return size;
        private class SortableHeaderRenderer implements TableCellRenderer
            private TableCellRenderer tableCellRenderer;
            public SortableHeaderRenderer(TableCellRenderer tableCellRenderer)
                this.tableCellRenderer = tableCellRenderer;
            public Component getTableCellRendererComponent(JTable table,
                                                           Object value,
                                                           boolean isSelected,
                                                           boolean hasFocus,
                                                           int row,
                                                           int column)
                Component c = tableCellRenderer.getTableCellRendererComponent(table,
                        value, isSelected, hasFocus, row, column);
                if (c instanceof JLabel) {
                    JLabel l = (JLabel) c;
                    l.setHorizontalTextPosition(JLabel.LEFT);
                    int modelColumn = table.convertColumnIndexToModel(column);
                    l.setIcon(getHeaderRendererIcon(modelColumn, l.getFont().getSize()));
                return c;
        private static class Directive
            private int column;
            private int direction;
            public Directive(int column, int direction)
                this.column = column;
                this.direction = direction;
    }any input will be appreciated.
    thanks
    Peter

    The code you posted doesn't help us at all. Its just a duplicate of the code from the tutorial. The custom code is what you have written. For example do you update the TableModel from the Event Thread? Do you update the SortModel or the DefaultTableModel? If you actually provide your test code and somebody has already downloaded the sort classes, then maybe they will test your code against the classes. But I doubt if people will download the sort classes and create a test program just to see if they can duplicate your results (at least I know I'm not about to).

  • SCAN LISTENER runs from only one node at a time from /etc/hosts !

    Dear all ,
    Recently I have to configure RAC in oracle 11g(r2) in AIX 6.1 . Since in this moment it is not possible to configure DNS, so I dont use SCAN ip into the DNS/GNS, I just add the SCAN ip into the host file like :
    cat /etc/hosts
    SCAN 172.17.0.22
    Got the info from : http://www.freeoraclehelp.com/2011/12/scan-setup-for-oracle-11g-release211gr2.html#ORACLE11GR2RACINS
    After configuring all the steps of RAC , Every services are ok except SCAN_LISTENER . This listener is up only one node at a time . First time when I chek it from node1 , it shows :
    srvctl status scan_listener
    SCAN listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is running on node dcdbsvr1
    now when I relocate it from node 2 using
    "srvctl relocate scan -i 1-n DCDBSVR2" , then the output shows :
    srvctl status scan_listener
    SCAN listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is running on node dcdbsvr2
    Baring these , we have to try to relocate it from the node2 by the following way, then it shows the error :
    srvctl relocate scan -i 2 -n DCDBSVR2
    resource ora.scan2.vip does not exists
    Now my question , How can I run the SCAN and SCAN_LISTENER both of the NODES ?
    Here is my listener file (which is in the GRID home location) configuration :
    Listener File OF NODE1 AND NODE 2:
    ==================================
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON
    LISTENER_SCAN1 =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC) (KEY = LISTENER_SCAN1)
    ADR_BASE_LISTENER_SCAN1 = /U01/APP/ORACLE
    2)
    Another issue , when I give the command : " ifconfig -a " , then it shows the SCAN ip either node1 or node2 . suppose if the SCAN ip is in the node1 , and then if I run the "relocate" command from node2 , the ip goes to the Node 2 . is it a correct situation ? advice plz ... ...
    thx in advance .. ...
    Edited by: shipon_97 on Jan 10, 2012 7:22 AM
    Edited by: shipon_97 on Jan 10, 2012 7:31 AM

    After configuring all the steps of RAC , Every services are ok except SCAN_LISTENER . This listener is up only one node at a time . First time when I chek it from node1 , it shows :If I am not wrong and after looking at the document you sent, you will be able to use only once scan in case you use /etc/host file and this will be up on only one node where you added this scan entry in /etc/hosts file.
    Now my question , How can I run the SCAN and SCAN_LISTENER both of the NODES ?Probably you can't in your case, you might run only one i think and on one node only
    srvctl status scan_listener
    SCAN listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is running on node dcdbsvr1
    now when I relocate it from node 2 using
    "srvctl relocate scan -i 1 -n DCDBSVR2" , then the output shows :
    srvctl status scan_listener
    SCAN listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is running on node dcdbsvr2You moved scan listener from node 1 to node 2, OK
    Baring these , we have to try to relocate it from the node2 by the following way, then it shows the error :
    srvctl relocate scan -i 2 -n DCDBSVR2
    resource ora.scan2.vip does not exists
    --------------------------------------------------------------------------------Since you have only one scan, you can't relocate "2". So ise "1" instead here also
    FYI
    http://www.oracle.com/technetwork/database/clustering/overview/scan-129069.pdf
    Salman

  • I added new songs in itunes and sync'd to ipod but the playlists that were changed are now in the wrong location. e.g. "Instrumental" playlist is now between letters M and N on my ipod, but in right location in itunes.  How do I fix this?

    Also, I can no longer find my "Recently Added" playlist.  I have searched every title in my playlists and its no longer there.  It's really frustrating because now if I want to listen to a new playlist that I've added new music to I have to really search for it.  Please help!  Thank you!

    This worked. Yesterday after I logged out - I continued to try to figure it out, and came up with the same solution. I made a smart playlist with both types.
    However, I had tried to drop those into the green purchased file yesterday and it would not accept them. Today it works.
    Guess it is like a car. It makes a noise, and when you take it to the dealer, it stops making that noise.
    I went and looked at all of the songs I had purchased. Some of the more recent songs say Protected. The first five I purchased just say "AAC audio file" but if you look at them in their file, they have the little lock icon on them, as the purchased and protected ones do.. So I dunno... ??
    Thanks for the help.

  • How to failover SCAN VIP and SCAN Listener from one node to another?

    Environment:
    O.S :          HP-UX  B.11.31 U ia64
    RDBMS:   Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    It is a 2 Node RAC.
    Question:
    How to failover the SCAN VIP and SCAN LISTENER running on node 1 to node 2?
    What is the relation between standard LISTENER and SCAN LISTENER ?
    Why do we need LISTENER, when we have SCAN LISTENER ?
    When I tried with SRCVTL STOP LISTENER , I thought the SCAN LISTENER adn SCAN IP will failover, but it did not?
    Also please clarify if I use SRVCTL RELOCATE SCAN -i 1 -n Node1
    Actalluy I am trying that by moving the SCAN listeners so that when I do PSU 7 patching on 1 node, no incoming attempt to connect will spawn
    a process and thereby opening files in $ORACLE_HOME (which would prevent the patch from occurring)
    Please clarify my queries.
    Thanks,  Sivaprasad.S

    Hi Sivaprasad,
    1. The following link will help you for SCAN VIP and SCAN LISTENER failover from 1 node to another.
    http://heliosguneserol.wordpress.com/2012/10/19/how-to-relocate-scan_listener-from-one-node-to-another-node-on-rac-system/
    http://oracledbabay.blogspot.co.uk/2013/05/steps-to-change-scan-ip-address-in.html
    2. The Standard LISTENER is specific for particular node for which it is running. It cannot be relocated as its specific for the node its running. SCAN listeners are not replacements for the node listeners.A new set of cluster processes called scan listeners will run on three nodes in a cluster (or all nodes if there are less than 3).  If you have more than three nodes, regardless of the number of nodes you have, there will be at most three scan listeners. So no relation for standard LISTENER and SCAN LISTENER.
    3. Hmmm. let me put it in easy way for this question. All the RAC services like, asm, db , services, nodeapps registers with this SCAN_LISTENER. So if any of these services (asm, db , services, nodeapps) got down/not running, the SCAN_LISTENER will know the down status, and if any client requests to access the node/service which is down, the SCAN_LISTENER will redirect the client request to the least loaded node. So here all these process will happen without the knowledge of client. And As usual the standard LISTENER looks only for incoming request to connect with the database. So we need both LISTENER and SCAN LISTENER.
    4. If you provide SRCVTL STOP LISTENER,  it stops the default listener on the specified node_name, or the listeners represented in a given list of listener names, that are registered with Oracle Clusterware on the given node. No failover will happen under this case.
    5. Yes you can relocate if you want to relocate the scan.
    Hope this helps!!
    Regards,
    Pradeep. V

  • IPod Classic fails to sync after adding new music

    Hi, so lately I've been having problems with my 160GB classic, I've always had problems with it but its gotten to the point where I am frustrated beyond belief. SO the problem arises when I add new music, it comes up with the error 'XXXX's iPod cannot be written or read'' and before it displays this message the sync usually sticks on a song, a random song that I would've added. I restored it a few times, scanned and fixed it a few times and then when I noticed I started skipping songs, some in mid-song I restored it again and the problem repeats itself. Help would be appreciated

    A few issues, but sorry let me try to understand.
    Adding new music, 'XXXX's iPod cannot be written or read'' can you let me know the number. most likely music format is not iPod Compatible like HE-AAC.
    started skipping songs  - these are normally due to corrupted ID3 tags, try converting them -File-> Advance -> IPOD version or use MP3 validator to fix all songs in the library. (My Apologies, only work for MP3 music that skipped)
    As for item 2, you can try Hard Reset if you like to download MP3 validator.
    After charging till full charge, at least 2 hours (preferably 4 hours)
    Toggle the Hold switch, make sure you dont see the red mark when you do the  next step
    Reset the iPod -> Press Menu and Center button simultaneously for about 10 secs till the Apple Logo comes ON
    Then release the buttons
    Select your preferred language.
    Here is the Apple support Article on the 5Rs
    http://www.apple.com/support/ipod/five_rs/classic/
    Good Luck!

  • Password for SCAN Listener.

    Hi Team,
    Is any one know how to set the password for SCAN listener in 11gr2?
    Is it similar way as normal..!
    Regards,
    Manohar

    user7439393 wrote:
    Hi Team,
    Is any one know how to set the password for SCAN listener in 11gr2?
    Is it similar way as normal..!
    Regards,Do you understand that why SCAN listener is there in the first place? This is not to going to be any use for client communication . The only time it would come into the picture is when there would be a resolution requirement for a local listener. Now, the question for you is, why you even want to set a password for it? Did you see the entry in the listener.ora which says that these listeners are added by an agent which means, there is nothing that you need to do for them?
    Aman....

  • TNS-12520 when connecting via TCPS on 11gR2 RAC with SCAN Listener

    I am struck trying to implement TCPS on our Oracle RAC SCAN Listener.  I have added to our Oracle 12c systems, but not on a RAC with SCAN.
    I created a wallet and certificate on one of the nodes, and copied it to the node and created auto login on each node.  I exported the trust.jks and identity.jks, and loaded them in my test java program as the trust store and key stores.  I have added the wallet location to the listener tns and sql  ora files.
    When attempting a TCPS connection, the ssl handshake succeed, but the client reports error:
    ORA-12520, TNS:listener could not find available handler for requested type of server
    The nodes scan listener log reports the TNS error, listener_scan1/alert/log.xml, when the connection is using TCPS on port 2484:
    <msg time='2015-04-29T14:06:20.629-04:00' org_id='oracle' comp_id='tnslsnr'  type='UNKNOWN' level='16' host_id='dublr059vm.dub.usoh.ibm.com'  host_addr='9.55.59.45'>
    <txt>29-APR-2015 14:06:20 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=tcarlson))
    (SERVER=DEDICATED)(SERVICE_NAME=DUB11RAC)) * (ADDRESS=(PROTOCOL=tcps)(HOST=9.55.61.122)(PORT=46635)) *
    establish * DUB11RAC * 12520
    </txt>
    </msg>
    <msg time='2015-04-29T14:06:20.629-04:00' org_id='oracle' comp_id='tnslsnr'
    type='UNKNOWN' level='16' host_id='dublr059vm.dub.usoh.ibm.com'
    host_addr='9.55.59.45'>
    <txt>TNS-12520: TNS:listener could not find available handler for requested type of server
    </txt>
    </msg>
    A connection using TCP completes without error:
    <msg time='2015-04-29T14:42:02.588-04:00' org_id='oracle' comp_id='tnslsnr' type='UNKNOWN' level='16' host_id='dublr059vm.dub.usoh.ibm.com'  host_addr='9.55.59.45'>
    <txt>29-APR-2015 14:42:02 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=tcarlson))
    (SERVER=DEDICATED)(SERVICE_NAME=DUB11RAC)) * (ADDRESS=(PROTOCOL=tcp)(HOST=9.55.61.122)(PORT=41950)) *
    establish * DUB11RAC * 0
    </txt>
    </msg>
    The scan listener is configured for TCP on 1521 and TCPS on 2484
    [oracle@dublr059vm ~]$ srvctl status scan_listener
    SCAN Listener LISTENER_SCAN1 is enabled
    SCAN listener LISTENER_SCAN1 is running on node dublr060vm
    [oracle@dublr059vm ~]$ srvctl config scan_listener
    SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521/TCPS:2484
    The service, dub11rac is ready on both instances.
    [oracle@dublr060vm ~]$ lsnrctl stat LISTENER_SCAN1
    LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 30-APR-2015 11:45:18
    Copyright (c) 1991, 2013, Oracle.  All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))
    STATUS of the LISTENER
    Alias                     LISTENER_SCAN1
    Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production
    Start Date                30-APR-2015 11:43:24
    Uptime                    0 days 0 hr. 1 min. 53 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File   /u01/app/11.2.0/grid/network/admin/listener.ora
    Listener Log File         /u01/app/11.2.0/grid/log/diag/tnslsnr/dublr060vm/listener_scan1/alert/log.xml
    Listening Endpoints Summary...
      (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN1)))
      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=9.55.59.47)(PORT=2484)))
      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=9.55.59.47)(PORT=1521)))
    Services Summary...
    Service "dub11rac" has 2 instance(s).
      Instance "dub11rac1", status READY, has 1 handler(s) for this service...
      Instance "dub11rac2", status READY, has 1 handler(s) for this service...
    Service "dub11racXDB" has 2 instance(s).
      Instance "dub11rac1", status READY, has 1 handler(s) for this service...
      Instance "dub11rac2", status READY, has 1 handler(s) for this service...
    The command completed successfully

    Hi hitgon,
    Thanks first.
    The commands output are as the following:
    Command: srvctl status listener
    Output:
    # Listener LISTENER is enabled
    # Listener LISTENER is running on node(s): rac1,rac2
    Command: srvctl status scan_listener
    Output:
    # SCAN Listener LISTENER_SCAN1 is enabled
    # SCAN listener LISTENER_SCAN1 is running on node rac2
    # TNSNAMES.ORA
    RAC =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = rac.localdomain)
    Command: sqlplus username/passwd@rac-scan:1521/rac.localdomain
    Output:
    # ERROR:
    # ORA-12520: TNS:listener could not find available handler for requested type of server
    # Enter user-name:
    By the way, rac-scan is the host where the SCAN listener is running and rac.localdomain is the service name. I've also tried the following commands
    with the same error output:
    sqlplus username/passwd@RAC
    At last, i think the output of "lsnrctl status LISTENER_SCAN1" might help:
    Service "rac.localdomain" has 2 instance(s).
    Instance "rac1", status READY, has 1 handler(s) for this service...
    Instance "rac2", status READY, has 1 handler(s) for this service...
    Service "racXDB.localdomain" has 2 instance(s).
    Instance "rac1", status READY, has 1 handler(s) for this service...
    Instance "rac2", status READY, has 1 handler(s) for this service...

  • 11gR2 - Statically defining listener.ora in GRID_HOME with SCAN listener.

    Hi,
    Grid Infrastructure 11.2.0
    DB 11.2.0.3 & DB 10.2.0.4.3
    For all databases on this RAC, I am allowing the Grid Infrastructure SCAN listener handle all the connections which is fine. However, without using the DBHOME Local listener - How do I statically define listener values in the GRID_HOME listener.ora?
    On some of my setup, where Dataguard is present - I will need to statically define XPT, DGB in the listener.ora in order for these services to be listening while the broker is handling Dataguard Switchovers. These will allow the databases to be restarted automatically, without the need to "manually" startup the databases.
    Mind you, some of my setups do not require the XPT and DGB to be statically defined in order for the databases to be started up automatically during a switchover.
    Statically defining XPT and DGB was a workaround that Metalink also suggested on my SR some time ago, however that was more obvious to define under DBHOME listener.ora. Under 11g GRID_HOME, it seems more dynamic.

    In what format?
    This is what is currently in GRID_HOME listener.ora.
    perdevora01:oracle-VPMPER:/apps/grid/product/11.2.0/grid_1/network/admin>cat listener.ora
    LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent
    LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3)))) # line added by Agent
    LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))) # line added by Agent
    LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent
    perdevora01:oracle-VPMPER:/apps/grid/product/11.2.0/grid_1/network/admin>Add static configuration in listener's format
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    ...

  • Any additional configuration require to achieve TAF in 11.2.0.4 RAC along with scan listener

    Hi
    We have 2 node RAC database of version 11.2.0.4 running on Linux platform.
    There are 2 SCAN listener running on DB instead of 3 which usually recommenced by oracle.
    When one of instance brought down as scheduled activity, sessions which connected to same instance, received ORA-03113: end-of-file on communication channel.
    They were doing some select activity in db.
    When user reconnected, it got connected to available instance.
    tns entry which users are using (description=(address=(protocol=tcp)(host=p1bds1d4-scan.sldc.sbc.com)(port=1521))(connect_data=(server=dedicated)(service_name=p1bds1d4)))
    Do we need to do any additional configuration to achieve TAF in 11.2.0.4 along with SCAN listener.
    Do we need to change tns to include clause like "FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC)(RETRIES=180)(DELAY=5)" ?
    Please help.
    Thanks
    Ashish

    You could enable TAF from the cient side by adding a clause such as that you suggest to your connect strings, but in a GI envirinment you would normally do it by adjusting the way the sevice is registered in the OCR. Run
    srvctl modify service -h
    and look up the -e and -m switches.
    John Watson
    Oracle Certified Master DBA

  • Old Scanned Documents attach themselves to new scans.

    My new scans are being added to the PDF of an old scan?  Why?  how do I work around this?
    Example:
    I scan a magazine article and mail it to a friend, later in the day I scan a photograph to mail to my daughter.  The photograph comes as page 2 in a PDF, where page 1 is the magazine article.
    The only way to work around this is to go into my documents folder, delete the scan.pdf and rescan. 
    Is ther a setting I can place to it never combines the scans?  (IF I UNCHECK COMBINED SCANNED DOCUMENTS, I get seperate PDFs per page, so if i scan a 3 page magazine article each page is it's own file, so that is not good either).

    Hi @Ermkid, 
    Welcome to the HP Support Forums.  I gather that you are unable to use your AOL.com email address when using the scan to email feature of your Photosmart 5525 printer.
    Please call HP’s Cloud Services at 1-855-785-2777 if you live in the USA/Canada region. If you live outside the USA/Canada region please click here to find the Technical Support number for your country/region.
    Regards,
    Happytohelp01
    Please click on the Thumbs Up on the right to say “Thanks” for helping!
    Please click “Accept as Solution ” on the post that solves your issue to help others find the solution.
    I work on behalf of HP

Maybe you are looking for