vRO (vCO) HTTP-REST Workflow - connection pool closing

Hi all - I've recently upgraded to vRealize Automation 6.2 and works collaboratively with vRealize Orchestrator to create workflows.  I created HTTP and REST workflows for request/release an IP address from our system IPAM (VitalQIP) and it seems to be failing with the description / the following exception:

Connection pool stop (workflow: demand-IP-du-QIP / Scripting (item3) #14)

vRO-1.pngvRO-2.png

Looking for the schema > script line #14 is in red below:

prepare the application

Do not edit

var inParamtersValues = [subnet, hostname, ddns, mac, type, w2kdom, comment];

var request = restOperation.createRequest (inParamtersValues, null);

Set the type of content query

request.contentType = "";

System.log ("request:" + request);

System.log ("the request URL:" + request.fullUrl);

Customize the request here

request.setHeader ("HeaderName", "headerValue");

run the query

Do not edit

var response = request.execute ();

prepare the output parameters

System.log ("response:" + response);

statusCode = response.statusCode;

statusCodeAttribute = statusCode;

System.log ("status code:"+ statusCode ');

contentLength = response.contentLength;

headers = response.getAllHeaders ();

contentAsString = response.contentAsString;

System.log ("content in the string:" + contentAsString);

Grep for IPaddress

Patt var = ('forward IP");

IPAddress = contentAsString.match (patt) m:System.NET.SocketAddress.ToString () var;

IPAddress = ipaddress.split (/ [\s,] + /);

IPAddress = ipaddress [2];

System.log ("IP address: =" + ipaddress);

vRO-3.png

I'm not sure how to work around this problem and I'm looking for assistance because I'm fairly new to vRO.  Thank you very much!




There is now an official fix for this problem: Technical preview of REST plugin version

Please provide your comments.

Tags: VMware

Similar Questions

  • API - POST - REST VCO connection pool closing

    Hello

    I'm working on an automation scenario where I need a VCO A workflow to start another workflow VCO B using the VCO REST Plugin (1.0.2) on VCO 5.1.1.

    I did it with success while creating a multitude of REST and surgery REMAINS by using the appropriate workflow. However, my approach is a lot of static and I need to create REST operations on the fly. I have had a look at workflows Plugin and try to do the same thing in my workflow.

    However I am stuck with the error 'Connection Pool close' when you try to run the POST request.

    My approach is to store the host REMAINS as a static attribute with VCO configuration object and retrieve it from there. I can run GET operations without any problem with the owner, i.e.


    restRequest = restHost.createRequest (restType, restUrl, restContent);

    restResponse = restRequest.execute ();

    My problem is actually running a POST operation. I prepared the content in XML format, which is

    " <-xmlns = execution context" http://www.VMware.com/VCO "> "
    < Parameters >

    < name parameter = "param1" type = "string" >

    < string > 1 < / string >

    < / parameter >

    < name parameter = "param2" type = "string" >

    < string > value2 < / string >

    < / parameter >

    < / Parameter >

    < / execution context >

    and use the content type "application/xml". Earlier in my code, I run a query GET to retrieve my ID for workflow target to create a Url like this:

    flow of work/98c3b8ee-9569-4940-acc1-b8fbc2e64649 / executions.

    This is code that I use to make the POST while creating an operation of REST when needed and delete it later.


    var restOperation = new RESTOperation (System.nextUUID ());

    restOperation.method = restType;

    restOperation.urlTemplate = restUrl;

    restOperation.defaultContentType = restContentType;

    restHost.addOperation (restOperation);

    RESTHostManager.updateHost (restHost);

    inputParameters var = [];

    var restRequest = restOperation.createRequest (inputParameters, restContent);

    restRequest.contentType = restContentType;

    var restResponse = restRequest.execute ();

    restHost.removeOperation (restOperation.id);

    RESTHostManager.updateHost (restHost);

    My code does not work when calling for the lifting of restRequest.execute: ' InternalError: connection pool arrested "." If anyone else has tried a similar scenario or has any idea what I may be missing?

    Thank you

    Bernd

    Thanks chap - update the objects did the trick.

    In my case, that initially caused the problem travel of COULD happen. Of course store the restHost object in the configuration of VCO leads to an out-of-date version at run time. I'm now store the ID of restHost only. Then, copy the following code works:

    var restHostId is System.getModule("my.library").myGetConfigAttr ("Folder", "VCO", "restHostId");.

    var restHost = RESTHostManager.getHost (restHostId);

    If (restType == 'GET') {}
    try {}
    restRequest = restHost.createRequest (restType, restUrl, restContent);
    restResponse = restRequest.execute ();
    }
    catch (exp) {throw ("request REST to run: cannot run '" + restType + "' '" + restUrl + "' request-reason = '" + exp + "'") ;}}
    }
    else {}
    try {}
    var restOperation = new RESTOperation (System.nextUUID ());
    restOperation.method = restType;
    restOperation.urlTemplate = restUrl;
    restOperation.defaultContentType = restContentType;
     
    restHost.addOperation (restOperation);
    RESTHostManager.updateHost (restHost);
     
    restHost = RESTHostManager.getHost (restHost.id);
    restOperation = restHost.getOperation (restOperation.id);

    inputParameters var = [];
    var restRequest = restOperation.createRequest (inputParameters, restContent);
    restRequest.contentType = restContentType;

    var restResponse = restRequest.execute ();

    restHost.removeOperation (restOperation.id);
    RESTHostManager.updateHost (restHost);
    }
    catch (exp) {throw ("request REST to run: cannot run '" + restType + "' '" + restUrl + "' request-reason = '" + exp + "'") ;}}
    }

  • Migration http - rest in 5.5.2 workflows 6.0.2 does not not for me.

    Hey there.  I try to get my workflow migrated on to 6.x and the work I've done with the http-rest plugin is a failure.  Once I have import the package, I see the resource in the HTTP-REST folder.  If I run the workflow to reload the configuration of the plugin I don't see the host appears. I checked that I can create a new host, that seems not be recognizing any host.  I also noticed that it creates the new host in a different folder of REST\Configuration.  If I restart the service orchestrator, run the "reload the plugin configuration" the workflow, I get an error that says "The valid String is empty.  If I look at the contents of the REST\Configuration file, I see a partially created resource content reads:

    <? XML version = "1.0" encoding = "UTF-8" standalone = "yes"? >

    < pluginVersion endpoint = "1.0.8" >

    < properties / >

    < / endpoint >

    As he began to process the file imported and choked on something?  Anyone has an idea on what could happen?  I am struck a major obstacle here.

    The two vRO servers are windows installs.  Source is 5.5.2 and plugin version 1.0.3.  Destination is 6.0.2 and plugin is 1.0.8.

    Paul.

    After more digging with a pick, we found this error as org.bouncycastle.crypto.InvalidCipherTextException well: block corrupted buffer.  This is of course related to something that need encryption.  The only thing in the resource element that had any kind of encryption was around the password for the endpoint that has been configured to use a shared session.  I changed the configuration to use a session per user, sync since the changes, refreshed/reloaded the plugin remains.  Endpoint seems to get processed without errors.  Updated the host remains to use a shared session.  Completed without error.  Seems to work fine now.  I hope this will get fixed as he sucked toward the top of many hours of my time.  It seems that there are similar errors with the PowerShell plugin and I'd be curious to see if it's the same type of problem with a piece of this configuration do not decrypt after syncing account to another server.

  • SQL Plugin - connection pool &amp; retries

    People-

    We use vCO workflows which a lot of CRUD operations on the database. In light of these are long-running workflows with a decent amount of load, we want to make sure that this solution we have in place is efficient and reliable. To this end:

    1. we want to ensure that we are able to reuse the database connections - y at - it the notion of Pools of connections or equivalent.

    2 How about reconnecting to the db when it falls down? Is that something it will take the code in the workflow through say managers of exceptions etc..

    I'm sure that others have encountered similar problems - would appreciate all comments that you may have.

    See you soon.

    Hello

    Unfortunately does not support the plugin SQL connection pooling. We have never considered it. We will discuss it and may include in the next version of the plugin update.

    Regarding your second question - we don't keep connection open for a long time and call evry DB is atomic. When you run workflows CRUD a new conncetion is created, the corresponding SQL query is executed / clerk and the connection is closed. If there is a problem, as the disconnection of the server Oracle, the right way to ensure that your operation has passed is to write a custom error handling by using the Scripting of the Orchestrator features. In pseudo-code:

    var hasPassed = false;
    for (i = 0; i< maxretries="" -1="" &&="" !haspassed="" ;="" i++)="">

    hasPassed = false;

    try {}

    Execute the statement using the JDBC API exposed or by using CRUD actions

    hasPassed = true;

    } catch (error) {}

    Save the problem

    }

    }

    Hope this helps you. Any additional comments will be great.

    Best regards

    Boyan

  • vRealize Automation API and HTTP-REST

    Hello

    Management of the booking does not include the current version of the plugin vcac. I guess that because that is a new feature of vRA API.

    Can how I add vRA API as host HTTP-REST in Orchestrator? The problem is the permission based on tokens. You must post a json on/identity/api to get the token and then use this value in an http header. I don't know how to do this.

    First a new version of the plugin vcac soon with the feature of booking?

    Thank you very much

    D.

    You can always add a crowd of VRA rest with no authenticaction, but you will still need to obtain an authentication of the symbolic holder and who spend using an authorization header. I would recommend a disconnection of your output chip once you are done so that you do not leave chips remaining. Once you have a workflow to get a token, you can then start to take advantage of the API normally... 6.2 has a new service of booking via the api REST of COFFEE, or you can use the CRUD operations and linqpad to create and edit reservations based on the plugin infrastructure, vRA.

    Take a look at this post to get a token

    grantorchard.comvCAC 6.1 API - authentication | grantorchard.com

    You can watch this post to add or pass in the additional headers to the rest of the API:

    http://www.jonathanmedd.NET/2014/09/use-headers-in-a-VCO-rest-operation.html

    Oli

  • Connection pool does not work.

    Nice day. all the

    I tried OracleConnectionPoolDataSource and OracleDataSource.

    And found that there is no difference in performance. And connections are not grouped according to me.

    My sample fill the table with the records and read and update simultaneously in two threads.

    Below is a code provided.

    < strong >

    A piece of < facilities > logs: each time new connection is created.

    ...

    connection = oracle.jdbc.driver.OracleConnection@1198891

    0 updatedNumber = 1

    Connection.Close = oracle.jdbc.driver.OracleConnection@1198891

    connection = oracle.jdbc.driver.OracleConnection@17725c4

    Connection.Close = oracle.jdbc.driver.OracleConnection@17725c4

    List.Size () = 10

    0, name_update0, name_desc0, name_status0, 2008-11-04, 2008-11-04.

    1, a1, c1, b1, 2008-11-04, 2008-11-04.

    ...

    view the logs files I see that every time new connection is created in both cases, if I use OracleConnectionPoolDataSource or OracleDataSource.

    < strong >

    Question: < facilities > can someone help me understand how to use the connection pool? And how to see with my own eyes that this works?

    DDL < strong > < facilities >:

    to run the program, we should create table:

    {color: #000080} CREATE TABLE TEST_RECORD1)

    ID NUMBER (10) NOT NULL PRIMARY KEY,

    NAME VARCHAR2 (255 BYTE),

    VARCHAR2 (255 BYTE) STATUS,

    DESCRIPTION VARCHAR2 (255 BYTE),

    START_DATE TIMESTAMP,

    END_DATE TIMESTAMP

    ); {color}

    < strong >

    < Facilities > Java code:

    package test.jdbc;

    import java.sql.Connection;

    import java.sql.PreparedStatement;

    import java.sql.ResultSet;

    import java.sql.ResultSetMetaData;

    import java.sql.SQLException;

    import java.sql.Statement;

    import java.util.ArrayList;

    import java.util.Date;

    import java.util.List;

    javax.sql.ConnectionPoolDataSource import;

    import javax.sql.DataSource;

    Import oracle.jdbc.pool.OracleConnectionPoolDataSource;

    Import oracle.jdbc.pool.OracleDataSource;

    public class TestConnectionPooling2 {}

    static data source data source;

    / * number of iterations * /.

    public static final long BASE_REPEAT_NUMBER = 5;

    public static final long RECORDS_NUMBER = 10;

    Public Shared Sub main (String [] args) throws Exception {}

    Here you can change the data source (shared or not), but the performance has won "t change

    setupDataSource (new OracleDataSource());

    setupDataSource (new OracleConnectionPoolDataSource());

    long startTime = System.currentTimeMillis ();

    own picture

    removeAllRecords ("the removal of test_record1");

    insert records into the table

    for (int i = 0; i & lt; RECORDS_NUMBER; i++) {

    insertRecord (i,

    «insert into TEST_RECORD1 (id, name, status, description, start_date, end_date) "»

    + " values (?, ?, ?, ?, ?, ?)");

    }

    wire installation that queries the data in table

    Wire th1 = new Thread ("thread 1") {}

    public void run() {}

    for (int i = 0; i & lt; BASE_REPEAT_NUMBER; i++) {

    retrieveRecords ("select * from test_record1 by id asc");

    Thread.Yield ();

    }

    }

    };

    wire installation that updates the data in table

    Th2 thread = new Thread ("thread 2") {}

    public void run() {}

    for (int counter = 0; counter & lt; BASE_REPEAT_NUMBER; counter ++) {}

    for (int i = 0; i & lt; RECORDS_NUMBER; i++) {

    performSingleUpdate (counter, i,

    "update TEST_RECORD1 set name =?, description =?, status =? where id =? ») ;

    Thread.Yield ();

    }

    }

    }

    };

    TH1.start ();

    Th2.start ();

    do not complete until the worker threads

    While (th1.isAlive (): th2.isAlive ()) {}

    Thread.Yield ();

    }

    long endTime = System.currentTimeMillis ();

    System.out.println ("execution time:" + (endTime - startTime) + "ms.");

    }

    private static Sub performSingleUpdate (long bar, long I, String sql) {}

    PreparedStatement stmt = null;

    Connection conn2 = getConnection().

    try {}

    stmt = conn2.prepareStatement (sql);

    long temp = counter * 10 + i;

    stmt.setString (1, "name_update" + temp);

    stmt.setString (2, "name_desc" + temp);

    stmt.setString (3, "name_status" + temp);

    stmt.setLong (4, i);

    int updatedNumber = stmt.executeUpdate ();

    System.out.println (counter + ".") updatedNumber = "+ updatedNumber);

    } catch (SQLException e) {}

    e.printStackTrace ();

    } {Finally

    try {}

    stmt. Close();

    } catch (SQLException e) {}

    e.printStackTrace ();

    }

    If (conn2! = null) {}

    closeConnection (conn2);

    }

    }

    }

    private public static void removeAllRecords (String deleteAllSQL) {}

    Statement stmt = null;

    Connection conn2 = getConnection().

    try {}

    stmt = conn2.createStatement ();

    int updatedNumber = stmt.executeUpdate (deleteAllSQL);

    System.out.println ("remove all records. updatedNumber = "+ updatedNumber);

    stmt. Close();

    } catch (SQLException e) {}

    e.printStackTrace ();

    } {Finally

    If (conn2! = null) {}

    closeConnection (conn2);

    }

    }

    }

    {} public static void retrieveRecords (String sql)

    List = new ArrayList();

    Statement stmt = null;

    ResultSet resultset = null;

    int recordsCounter = 0;

    Output connection getConnection() =;

    try {}

    stmt = connection.createStatement ();

    ResultSet = stmt.executeQuery (sql);

    While (resultset.next ()) {}

    Record NewRecord = new Record();

    recordsCounter ++;

    newRecord.setId (resultset.getLong ("id"));

    newRecord.setName (resultset.getString ('name'));

    newRecord.setDesc (resultset.getString ("description"));

    newRecord.setStatus (resultset.getString ("status"));

    newRecord.setStartDate (resultset.getDate ("start_Date"));

    newRecord.setEndDate (resultset.getDate ("end_Date"));

    List.Add (NewRecord);

    }

    } catch (SQLException e) {}

    e.printStackTrace ();

    } {Finally

    If (resultset! = null)

    try {}

    ResultSet.Close ();

    } catch (Exception e) {}

    e.printStackTrace ();

    }

    If (stmt! = null)

    try {}

    stmt. Close();

    } catch (Exception e) {}

    e.printStackTrace ();

    }

    If (connection! = null) {}

    closeConnection (connection);

    }

    }

    StringBuilder sb2 is new StringBuilder ("list.size () =" + list.size () + "\n");.

    for (int i = 0; i & lt; list.size (); i ++) {}

    Record (Record) = list.get (i);

    SB2. Append ("" + record.toString () + "\n");

    }

    System.out.println ("" + sb2);

    }

    {} public static void insertRecord (long counter, String sql)

    PreparedStatement stmt = null;

    Connection conn2 = getConnection().

    try {}

    stmt = conn2.prepareStatement (sql);

    stmt.setLong (1 wicket);

    stmt.setString (2, "a" + counter);

    stmt.setString (3, "b" + counter);

    stmt.setString (4 "c" + counter);

    stmt.setTimestamp (5, java.sql.Timestamp (System.currentTimeMillis ())) of new;

    stmt.setTimestamp (6, java.sql.Timestamp (System.currentTimeMillis ())) new;

    int updatedNumber = stmt.executeUpdate ();

    System.out.println (".insertNumber =" + counter + updatedNumber);

    } catch (SQLException e) {}

    e.printStackTrace ();

    } {Finally

    try {}

    stmt. Close();

    } catch (SQLException e) {}

    e.printStackTrace ();

    }

    If (conn2! = null) {}

    closeConnection (conn2);

    }

    }

    }

    Initial methods

    private static Sub setupDataSource(OracleDataSource oracleDataSource) throws SQLException {}

    OracleDataSource ds = oracleDataSource;

    ds.setUser ("akhlystov");

    ds.setPassword ("xallex");

    ds.setURL ("jdbc:oracle:thin:@localhost:1521:abc");

    dataSource = ds;

    }

    public static {DataSource getDataSource()

    Returns the data source;

    }

    private public static void closeConnection (connection) {}

    If (conn! = null) {}

    return;

    }

    System.out.println ("Connection.Close () =" + login + "\n");

    try {}

    Connection.Close;

    } catch (SQLException e) {}

    throw new RuntimeException)

    "application should not run when the database cannot close the connection");

    }

    }

    static connection Conn;

    public static {connection getConnection()

    /*

    * Uncomment to test without any source of data, unique connection if (conn is

    * null) {try {conn = getDataSource () .getConnection () ;} catch}}

    * (SQLException e) {e.printStackTrace () ;}} return conn;

    */

    try {}

    Fitting out = null;

    If (instanceof ConnectionPoolDataSource getDataSource()) {}

    connection = ((ConnectionPoolDataSource) getDataSource ()) .getPooledConnection () .getConnection ();

    } else {}

    connection = getDataSource () .getConnection ();

    }

    System.out.println ("connection =" + connection);

    return of connection;

    } catch (SQLException e) {}

    e.printStackTrace ();

    throw new RuntimeException ("application should not run when the database is not available");

    }

    }

    Record class

    public static class {Record

    long ID;

    The name of the string;

    String desc;

    Status string;

    Date startDate;

    Date endDate;

    {} public long getId()

    return the id;

    }

    public void setId (long id) {}

    This.ID = id;

    }

    public String getName() {}

    return the name.

    }

    public void setName (String name) {}

    myIdName = name;

    }

    public String getDesc() {}

    return of ESCR;

    }

    {} public void setDesc (String desc)

    This.DESC = desc;

    }

    public String getStatus() {}

    return the situation;

    }

    {} public void setStatus (string status)

    This.Status = status;

    }

    public Date getStartDate() {}

    return startDate;

    }

    {} public void setStartDate (Date startDate)

    this.startDate = startDate;

    }

    public Date getEndDate() {}

    return endDate;

    }

    {} public void setEndDate (Date endDate)

    this.endDate = endDate;

    }

    public String toString() {}

    return the id + ',' + name + ',' + desc + ',' + status + ',' startDate + ', ' + endDate + ".";

    }

    }

    }

    Published by: Alexandr Khlystov on 04.11.2008 14:20

    Relevant documentation for JDBC 9i drivers here is http://download.oracle.com/docs/cd/B10501_01/java.920/a96654/connpoca.htm#1056354.

    In the world of JDBC 9i driver, there was a distinction between a connection pool (consolidated connection) and a cache of connections.

    A connection pool is trying to eliminate overhead consumption and resources of connection / disconnection from the database. If the connection is going to be only reused so no reason to close the connection, just open it again.

    What a performance gain were you looking for? Only, you would see a performance gain if your application was constantly opening and closing of connections, demanding that all resources for Setup and take down communications database. When the connection is established there is no difference in the performance of the execution of SQL.

    You can see with

    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    import oracle.jdbc.pool.OracleConnectionPoolDataSource;
    import oracle.jdbc.pool.OracleDataSource;
    import oracle.jdbc.pool.OraclePooledConnection;
    
    public class TestConnectionCache {
    
      public static void exec(Connection conn) throws SQLException {
        ResultSet rs = conn.prepareStatement("select sys_context('USERENV','SESSIONID') from dual").executeQuery();
        rs.next();
        System.out.println("Session id: " + rs.getInt(1));
        conn.close();
      }
    
      public static void main(String[] args) throws SQLException {
    
        OracleDataSource ods = new OracleConnectionPoolDataSource();
        ods.setUser("...");
        ods.setPassword("...");
    
        // Construct the jdbc url.
        String host     = "...";
        String port     = "...";
        String instance = "...";
    
        String url =
          "jdbc:oracle:thin:@//" + host + ":" + port + "/" + instance
          ;
        ods.setURL(url);
    
        // No connection re-use.
        exec(ods.getConnection());
        exec(ods.getConnection());
    
        // Connection re-use. (Connection pooling)
        OraclePooledConnection opc = (OraclePooledConnection)((OracleConnectionPoolDataSource)ods).getPooledConnection();
        exec(opc.getConnection());
        exec(opc.getConnection());
      }
    }
    

    Product output similar to:

    Session id: 4110149
    Session id: 4110150
    Session id: 4110151
    Session id: 4110151
    

    Note: when the pooliing connection is used, the session of database id is the same. Call close() has not closed the physical connection.

    A cache of connections is a layer on top of pooled connections that manages the creation and destruction of the connections. There usually limits this link how much should be open and the maximum number of connections to allow. Then the cache is queried for a connection, it can return the one that is not in use or perhaps create a new.

    Later versions of the JDBC driver will greatly simplify managing your connections and here is the note of documentation:

    Note:
    The previous cache architecture, based on OracleConnectionCache and OracleConnectionCacheImpl, is discouraged. Oracle recommends that you take advantage of the new architecture, which is more powerful and offers better performance.

    Any reason you're not not using a newer driver?

  • OBIEE 11 g RPD migration - how to automate the Connection Pool passwords changes in environments

    Hello gurus

    We have a situation in our client, where I am responsible for automating RPD Migrations in environments. In our current scenarios, (SID database) data source names and user names (schema name) are same in environments. The current process deploy us the RPD by EM then SPR online by using the administration tool and manually open update passwords in each connection pool (we have 9 pools of connections). There has been a lot of problems with this approach you can imagine (especial when do things the manual way).

    Can you please provide a better approach to automate this process in order to avoid human error.

    Thank you very much.

    Take a look at BIServerT2PProvisioner.jar http://docs.oracle.com/cd/E29542_01/bi.1111/e10540/conn_pool.htm#BHBBDDFF

  • HTTP-REST 2.0 - accept application/json

    It seems that the "request.setHeader("Accept","application/json")" does not work with HTTP-REST plugin 2.0.

    I configured a host BASED HTTP pointing to NSX and works so as to gain an advantage by using the URL "{/ api/4.0/edges/{edgeId}. In the 'operation of appeal' workflow, I add the following line:

    request.setHeader ("Accept", "application/json")

    It works perfectly find on a vRealize Orchestrator 6.0.3 with HTTP-REST plugin version 1.0.9 and returns a JSON response. But with vRealize Orchestrator 7.0.0 by using HTTP-REST plugin 2.0.0 version returns an XML response.

    How can I get the JSON response with the 2.0.0 version?

    Thank you very much!

    D.

    I found the answer myself.

    Incredibly, with this release, this command does not work:

    request.setHeader ("Accept", "application/json")


    Instead, I need to use only in small print:

    request.setHeader ("accept", "application/json")

    OMG!

  • NLS parameters in a connection pool environment

    I have limited experience of localization/globalization and I am building an application, using Oracle APEX 4.2/Oracle 11 g db, which takes care of several users of different nationalities.  I have a specific question, but first... can anyone recommend good books, blogs and websites to learn more about best practices for the many things you need to think in this area?

    Second, my precise question is... Since my application will use a connection pool, how it works as far as setting the NLS parameters for a given client session?  In the typical client/server architecture that I know that you would simply change the NLS parameter when the user connects, and this change would govern just the session of this user database.  It's a different approach when we are in an environment of connection pool?  If this is not the case, how Oracle now manages the parameters of the client session this session of customer may engage in more than one session of db in its lifetime?

    You can set the runtime: http://docs.oracle.com/cd/E16655_01/appdev.121/e17961/global_primary_lang.htm#HTMDB14002

    Thank you

    Sergiusz

  • Missing for DBAdapter cluster Weblogic Congfiguration outbound connection Pool entry

    Hello

    When I created an entry for outbound connection pool in DBAdapter weblogic console in a clustered (1-Admin server and servers managed by 2) environment and updated adapter DB, I have identified only input connection is updated in that plan a managed server and other server managed, it is not updated. For this reason, we are unable to access the data sources for some requests for the application.

    As a work-around if we plan. XML file to another server managed manually with update and DB adapter connection entry, we are able to find the entrance of connection for managed servers.

    Outside work around there at - it another solution to this problem so that I can add a connection adapter DB Console entry that will update the two plan files.

    Thank you and best regards,

    Vincent

    Can I propose to maintain the file plan of shared drive accessible from all nodes in the server, this will reduce the manual work.

    Concerning

    Albin I

    http://www.albinsblog.com/

  • HTTP-REST plugin - how to PUT binary content?

    Hello.

    Does anyone know what is the right way to use the HTTP methods - REST Plugin to download binary content on the server using the method PUT?

    I have no problem to download a text file (even with the size of a few megabytes), but even with a small binary file (30-40 KB) the server returns HTTP 500 error.

    Changing the value of the contentType to 'application/octet-stream' field does not help.

    Thank you.

    Based on a recent application, one of my colleagues has provided examples of code that downloads a file by using the HTTP-REST plug-in...

    file = name of the input variable. vCO object type is MimeAttachment

    restOperation = name of the input variable. vCO object type's REST: RESTOperation

    Before the code specified at that location, you need to establish your inputParametersValues are for the query:

    // Set the request contentType to the file's mime type
    var request = restOperation.createRequest(inParametersValues, file.content);
    request.contentType = file.mimeType;
    System.log("Request: "+request);
    System.log("Request URL: "+request.fullUrl);
    
    // Set whatever additional headers you may need here:
    // request.setHeader("headerName"," headerValue");
    
    // Execute the request:
    var response = request.execute();
    
    System.log("Response: "+response);
    // prepare an output:
    var statusCodeAttribute = response.statusCode;
    System.log("Status code: "+statusCodeAttribute);
    

    I hope that's enough to help out you...

  • Pool table of event in the connection pool of 11g OIC for obiee 11g

    Hi all, I tried to use the event pool table using the OIC 11 g connection pool. A deleted event, but cache pool table records did not get purged after 60 minutes interval. Should we do addition together upwards to event pool table when you use oci 11g other that makes it active? It seems that it works only with odbc to connect. http://gerardnico.com/wiki/dat/obiee/event_table thanks, Sushil

    Import the table with ODBC and change the interface call OCI connection pool.

  • the connection of WebLogic connection pool timeout issue too soon

    We are having a problem with the connection to weblogic pool. Our web application is based on the Spring Framework, deploy to Weblogic using the data source to connect to Oracle. We use a duration of 1 min and max setting of connection pool 15 on weblogic. But the problem that we face is that the pool does not manage any connection as a pool. Each request makes a new connection to the Oracle server and right closed within a few seconds of connection. The number of new connections could be easily up to more than 100 within 10 minutes.

    Is there a timeout parameter to check the living connection? Could someone please share your thoughts how to solve the problem? Your help is really appreciated.

    Framework Spring (2.5.3), Weblogic (10.3), Oracle (11 g 2)

    This is the setting on our data source:

    -----------------------
    Driver class: oracle.jdbc.OracleDriver

    Initial capacity: 30
    Maximum capacity: 30
    Ability to increment: 1
    Type of instruction Cache: LRU
    Statement Cache Size: 10

    Test the connections on the reserve: checked
    Test frequency: 120
    Name of the test Table: SQL SELECT 1 FROM DUAL
    Seconds to trust an idle connection pool: 10
    Reduce the frequency: 900
    The login retry frequency: 0
    Connect time: 0
    Timeout:0 connection inactive
    Maximum pending connection: 2147483647
    Timeout:10 store login
    Reporting deadline:-1
    Ignore the connections in use: checked
    Pins-wire: unchecked
    Remove Infected connections Enabled: checked
    ---------------------
    Of the tracking tool, we have seen the following statistics:

    Average number of active connections: 0
    Current number of active connections: 0
    High number of active connections: 1
    Total number of connections: 1523
    Current capacity: 1
    Doesn't have a number of requests for reserve: 46
    More high Num available: 30
    Number of connections leak: 0
    Wait for the high number of seconds: 0
    Number of requests for reserve: 1531

    Other parameters are all 0.

    --------------------------
    For the adjustment of the spring:

    < bean id = "ourdatasource" class = "org.springframework.jndi.JndiObjectFactoryBean" >
    < property name = "jndiName" > < value > weblogic.datasource < / value > < / property >

    <!-adds the following to the question if debugging caused by cluster or not->
    < property name = "cache" value = "false" / >
    < property name = "lookupOnStartup" value = "false" / >
    < property name = "proxyInterface" value="javax.sql.DataSource"/ >
    < / bean >

    Try to uncheck ' delete infected enabled connections "and let me know...

  • OBIEE 11 g - connection Pool &gt; Execute before application procedural error.

    Hello

    I am trying to run a stored procedure before running a query. Thus in the Connection Pool > Login Scripts > before Execute Query, I have the following code.
    BEGIN PRC_RUN_MV_JOBS();  
    END;
    I call a DBMS_JOB. RUN the PRC_RUN_MV_JOBS procedure (NUMBER of JOBS). It works fine when I run using Toad or SQL Developer.

    And I run a scan, I get the following error.
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 43119]
     Query Failed: [nQSError: 17001] Oracle Error code: 6550, message: ORA-06550: line 1, column 27: PLS-00103: Encountered the symbol "" when expecting one of the following: 
    begin case declare end exception exit for goto if loop mod null pragma raise return select update while with <an identifier> <a double-quoted delimited-identifier> <a bind variable> 
    << close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe The symbol "" was ignored. at OCI call OCIStmtExecute: BEGIN 
    PRC_RUN_MV_JOBS(); END;. [nQSError: 17011] SQL statement execution failed. (HY000)
    Can someone make me please how to fix this? Thanks in advance.

    Try this:

    BEGIN PRC_RUN_MV_JOBS;  END;
    

    Best regards
    Kalyan Chukkapalli
    http://123obi.com

  • Time of excessive latency of connection... Adobe Air supports on mobile connection pooling?

    Hello

    I'm developing a mobile application that loads the thumbnail images to a remote server. During testing on the Android platform, however, I discovered that the images are very long to load. By monitoring the server logs, I determined that poor performance is caused by the absence of connection pooling, which means that each request creates a new connection. Running the sample code below on a mobile device produces 20 applications and 20 attempts to connect. By comparison, the same web application or desktop creates 2 connections and reuses connections for the following applications. Important overhead and latency associated with generating new connections has a significant impact on performance, with 20 thumbnails taking about 4-5 seconds to load on mobile compared to 0.5-1 second on a desk.

    I've included a sample application below the emphasis placed on the performance issue. The image itself is very small (290 bytes), to focus the issue on the latency of the connection. I confirmed this behavior on many Android devices running 4.1, 4.0 and 2.3. I also tried using the charger c. URLLoader v. URLStream and v. sequential loading with no change in the behavior of simultaneous connection. Trying to set up the connection to 'keep-alive' in the URLRequest has also no effect.

    package

    {

    import flash.display.Loader;

    import flash.display.Sprite;

    import flash.display.StageAlign;

    import flash.display.StageScaleMode;

    import flash.events.Event;

    import flash.net.URLRequest;

    import flash.utils.getTimer;

    SerializableAttribute public class Main extends Sprite

    {

    private var _count:int = 0;

    public void Main()

    {

    Super();

    internship. Align = StageAlign.TOP_LEFT;

    stage.scaleMode = StageScaleMode.NO_SCALE;

    trace ("Start time" + getTimer() + "ms");

    var loader: Loader;

    var url: String = " " http://fbcdn-profile-a.akamaihd.NET/static-AK/rsrc.php/v2/yo/r/UlIqmHJn-SK.gif ";  290 bytes

    for (var i: int = 0; i < 20; i ++) {}

    loader = new this.addChild (Loader()) as a charger.

    loader.contentLoaderInfo.addEventListener (Event.COMPLETE, complete);

    Loader.Load (new URLRequest (url));

    }

    }

    private void complete(event:Event):void

    {

    _Count ++

    trace ("Completed" + _count + 'to' + getTimer() + "ms");

    }

    }

    }

    So, I have a few questions:

    (1) is there something I can do to allow the reuse of connection?

    (2) is it an inherent limitation with Adobe Air for mobile?

    (3) is that someone can confirm if this limitation exists on other mobile platforms (iOS or Blackberry)?

    Any help you can provide would be greatly appreciated. I really hope that this isn't a fundamental limitation of Adobe Air because it weakens my application to feel very slow.

    Thank you

    Adam

    Hmm. You were quite right, it's a little disappointing!

    This is Android recompiled for 3.4 rather than 3.1.

    null

    OVER 50 with 8 Chargers in 11327 milliseconds or 226,54 by load.   50 8 11327 226,54

    OVER 50 with 50 Chargers in 8899 milliseconds or 177,98 by load.   50 50 8899 177,98

    OVER 50 with 50 Chargers in 9280 milliseconds or 185,6 by load.     50 50 9280 185,6

    OVER 50 with 50 loaders in 9513 milliseconds or 190.26 per charge.   50 50 9513 190.26

    OVER 50 with 8 Chargers in 9744 milliseconds or 194.88 by load.     9744 8 50 194.88

    OVER 50 with 1 Chargers in 16383 milliseconds or 327.66 by load.   16383 1 50 327.66

    Compared with Apple iPad recompiled for 3.4 rather than 3.1.

    null

    OVER 50 with 8 Chargers in 502 milliseconds or 10.04 per charge. 50 8 502 10.04

    OVER 50 with Chargers of 50 to 100 milliseconds or 2 per load.     50 50 100 2

    OVER 50 with 50 Chargers in 117 milliseconds or 2.34 per charge. 50 50 117 2.34

    OVER 50 with 50 Chargers in 93 milliseconds or 1.86 per charge.  50 50 93 1.86

    OVER 50 with 8 tires in 270 milliseconds or 5.4 per charge.    50 8 270 5.4

    OVER 50 with 8 Chargers in milliseconds of 307 or 6.14 per charge.  50 8 307 6.14

    OVER 50 with 8 Chargers in 316 milliseconds or 6.32 per charge.  50 8 316 6.32

    OVER 50 with 4 Chargers in 555 milliseconds or 11.1 per charge.  50 4 555 11.1

    OVER 50 with 4 Chargers in 547 milliseconds or 10.94 per charge. 50 4 547 10.94

    OVER 50 with 4 Chargers in 535 milliseconds or 10.7 per charge.  50 4 535 10.7

    OVER 50 with 2 Chargers in 1038 milliseconds or 20,76 by load.        50 2 1038 20,76

    OVER 50 with 2 Chargers in 1042 milliseconds or 20,84 by load.        50 2 1042 20,84

    OVER 50 with 1 Chargers in 2107 milliseconds or 42,14 by load.        50 1 2107 42,14

    OVER 50 with 1 Chargers in 2099 milliseconds or 41,98 by load.        50 1 2099 41,98

    Both are on the exit compilation, which should take all of the variability. So, Yes, it is as if the Runtime AIR 3.4 lost the pool of connections, but ONLY for Android.

    PS: Code I used in my test (which was a view based Mobile application conventional) is below in case you want to include it when you submit a bug report.


    http://ns.Adobe.com/MXML/2009.
    xmlns:s = "library://ns.adobe.com/flex/spark" title = "TestLLatency" xmlns:mx = "library://ns.adobe.com/flex/mx" >

      Import mx.events.FlexEvent;
      
    protected function uicomponent1_creationCompleteHandler(event:FlexEvent):void
    {
    startTest();

    }
        
    public function startTest (): void {}
    If (tail) throw new Error ("Please wait for the previous test at the end.");
    queue = new Array();
    _Count = 0;
    var loader: Loader;
    var i: int;
    for (i = 0; i< numtoqueue;="" i++)="">
    loader = new bob.addChild (Loader()) as a charger.
    Loader.x = (I have 10%) * 50;
    Loader.y = Math.floor (i/5) * 50;
    loader.contentLoaderInfo.addEventListener (Event.COMPLETE, complete);
    queue.push (Loader);
    }
    startTime = getTimer();
    for (i = 0; i
    nextQueue();
    }
    }
    protected var startTime:int;
    protected var endTime:int;
    protected var numToQueue:int = 50;
    protected var numLoaders:int = 8;
    protected var queue: Array;
    private var _count:int;
    private void complete(event:Event):void
    {
    _Count ++
    nextQueue();
    }
    [Bindable] protected var results: String;
    protected function nextQueue (): void {}
    var url: String = "http://fbcdn-profile-a.akamaihd.net/static-ak/rsrc.php/v2/yo/r/UlIqmHJn-SK.gif";  290 bytes
    if(queue && queue.) Length) {}
    var loader: Loader = queue.pop () as a charger.
    Loader.Load (new URLRequest (url));
    } else {if(_count==numToQueue)
    endTime = getTimer();
    var last: int = endTime-startTime;
    results += "\n" + ("COMPLETED" + numToQueue + "with" + numLoaders + "Chargers in ' + (elapsed) +" milliseconds or ' +(elapsed/numToQueue) + ' by load.\t"+[numToQueue,numLoaders,elapsed,elapsed/numToQueue].join("\t ' ""));
    queue = null;
    {while(Bob.numChildren>5)}
    bob.removeChildAt(bob.numChildren-1);
    }
    bob.getChildAt (0) .addEventListener (MouseEvent.CLICK, repeatTest);
    bob.getChildAt (1) .addEventListener (MouseEvent.CLICK, repeatTest);
    bob.getChildAt (2) .addEventListener (MouseEvent.CLICK, repeatTest);
    bob.getChildAt (3) .addEventListener (MouseEvent.CLICK, repeatTest);
    bob.getChildAt (4) .addEventListener (MouseEvent.CLICK, repeatTest);
    }
    }
    protected function repeatTest(event:MouseEvent):void {}
    var dob:DisplayObject = event.target as DisplayObject;
    var testBehaviour:int = dob.parent.getChildIndex (dob);
    try {}
    {Switch (testBehaviour)}
    case 4:
    this.numLoaders = this.numToQueue;
    break;
    case 3:
    this.numLoaders = 8;
    break;
    case 2:
    this.numLoaders = 4;
    break;
    case 1:
    this.numLoaders = 2;
    break;
    case 0:
    this.numLoaders = 1;
    break;
    }
    startTest();
    dob.removeEventListener (MouseEvent.CLICK, repeatTest);
    for (var i: int = 0; i<5;i++)>
    } catch(e:Error) {}
    trace (e.message);
    }
    }
     
    ]]>


     


     
     
     

Maybe you are looking for

  • HP Pavilion Elite h8 - 1070t: updated graphics card for HP Pavilion Elite h8 - 1070t

    Up to what series Gtx is compatible with this model on computer? I tried to install a Gigabyte Gtx 960 card to my pc and it was not compatible. I have read similar problems for older models of PC and I was wondering the compatibility for this particu

  • Ethernet RJ-45 for Pavilion laptop connector must be replaced

    I have a Pavilion Notebook, which has broken into the RJ-45 socket (Ethernet) contact.  I need to replace it and can't find the spare part.  Hoping that this is just a simple removal and replacement operation and the jury is only in layers.  I should

  • Updates that keep a failure

    KB981715, 982312, 980729, 982308, 979441, 982158, 976321, 982135, 982331, 980376 and finally 220131 and now my outlook says cannot open the window.  Please notify.

  • update windows 7 home ultimate

    "" I just updated windows 7 home ultimate day and now I get an error stating that "the exception" efPMutilS.dll to 000274C 1.  Never get this error on reboot with the original version.  Why am I getting it now after paying 139.00 for the upgrade?

  • Windows Vista cannot be updated because the service does not work!

    Windows Vista will not update because it says that the service is not running.  He said I might have to restart the computer. I tried several reboots the computer. I tried to get into the services and manually stop and restart the service.  Nothing s