Client reconnect takes long when first node is not available

Hi guys,
I am looking for a way how to "speed up" client reconnect in following scenario:
I have two brokers running in HA cluster configured against a DB2 database as storage for messages. I configured JNDI with a connection factory pointing to both clusters:
imqAddressList = mq://localhost:7676,mq://localhost7677
imqReconnectAttempts = 0
On the client side I lookup the connection factory from JNDI and per request (or in other cases for more client requests) I create a connection from the factory. When I shut down first broker, second will correctly take over. The problem is that when I make new request it tries to create new connection from the same factory but first try will be timeouted because first broker is down. It takes another 3seconds to create correct connection to second broker. So every request until first broker is up again will take 3 seconds.
I looked into the code and it doesn't seem there is a way how to configure it. Can you give me a hint in which direction to go? Should I :
- implement a connection pool for JMS or
- extend connection factory so it will change the order of addresses
- hack it somewhere directly in the code?
Many thanks.
P.S. Running OpenMQ 4.2 in Spring with Atomikos transaction manager
Edited by: eldzi on Jan 20, 2009 11:23 AM

Invalidating connection factory is not possible because I received it from JNDI. The RANDOM stuff will partially help but still it will always take time for each connection created. For the moment it looks that implementing a connection pool is the best solution. It will reduce the time because there will be only one reconnect for a connection, then it will be prepared in the pool for reuse.

Similar Messages

  • Take long to sync contacts and notes calandario 6800 and with Microsoft Outlook  already have 2 hours and not finish the process please help

    take long to sync contacts and notes calandario 6800 and with Microsoft Outlook
    already have 2 hours and not finish the process please help

    Where error messages are you getting?
    Can you not do both? Send and Receive?
    Check but I think yo have the right setting described here:
    iCloud: Mail server information

  • HT204266 I live in China, have Dutch nationality, and no US address or Credit Card; how can I have access to products from the US iTunes store, in particular music, when such items are not available from the China iTunes store? In general, what are the di

    I live in China, have Dutch nationality, and no US address or Credit Card; how can I have access to products from the US iTunes store, in particular music, when such items are not available from the China iTunes store? In general, what are the differences between countries' iTunes offerings? Does one really need an address and a credit card for any country to be able to access that countries iTunes store? Why these restrictions?

    You cannot.
    You cannot use another countrys itunes store.
    You must be physically locates inside the borders of a country to use that countrys itunes store and a credit card issued in that country with a valid billing address in that country.
    The owners of the distribution rights of movies/music/etc differ by country.  These distributors decide who can sell their content in that country.
    Buy from another source if your countrys itunes store does not carry somehting that you want.

  • NewElementInHierarchy() - Adding New Elements, progressively takes longer when adding multiple siblings

    With my ESTK script, users select model numbers from a list and then the script inserts an element with a model number entered into an attribute, one element for each model selected.
    When adding a large number of elements, each additional sibling element takes a little longer to add then the previous element. Adding 250 elements can take upwards of 3-1/2 minutes or more. While adding 20, 50, or 75 elements happens quickly, without any noticeable duration. It’s somewhere above 110 is where it starts to be noticeable.
    I even used $.hiresTimer and wrote the value to the console for each time a model was added. Since the timer is reset back to zero (0) each time it's called, it was easier to notice that the amount it incremented from one element to the next got progressively larger.
    Any thoughts as to why it’s taking so long or thoughts on what I could do to speed it up?
    The structure looks like this:
    <PartModels>
          <NoteText>Text</NoteText>
          <Model ModelNumber=”ABC01”/>
          <Model ModelNumber=”ABC02”/>
          <Model ModelNumber=”DEF03”/>
          <Model ModelNumber=”DEF04”/>
          <Model ModelNumber=”XYZ01-A”/>
          <Model ModelNumber=”XYZ*B”/>
          <Model ModelNumber=”XYZ500”/>
    </PartModels>
    The script is somewhat straight forward: cycle through an array of the model numbers selected, add a new element for each model number and set it's attribute value to the model number. This is the short version:
    Function InsertModelElements (modelsToIns, insElemLoc, GVdoc) {
         var newEleId;
         var newElemLoc = insElemLoc;
         var elemDef = GVdoc.GetNamedElementDef(“Model”);
         for(var i = 0; i < modelsToIns.length; i++){ // modelsToIns is the array of models selected
              newEleId = elemDef.NewElementInHierarchy(newElemLoc); //ElementLoc based on NoteText first, last, or not present
              SetAttribute(newEleId, "ModelNumber", null, modelsToIns[i]); //more robust function to set attribute
              /*Which also works for setting attribute*/
              //var vattributes = newEleId.GetAttributes();
              //vattributes[0].values[0] = modelsToIns[i];
              //newEleId.Attributes = vattributes;
              /*At one point I tried using a new element location from the last inserted element, no change*/
              //var newElemRange = setElementSelection(GV_doc, EleId); //function that returns range
              //newElemLoc = newNewElemRange.end;
    Any help is appreciated.
    Sincerely,
    Trent

    Thanks Russ,
    I seriously considered trying copy/paste and started to modify the code to do so. But I couldn't let it go, the answer had to be right there in front of me, just it's been too long since I've worked with this stuff, I'm not able to see it. Then it dawned on me what is happening.
    In an earlier test, I placed a timer on each action that is looped through. For example, I start with an container element that has 200 children elements, each with a specific/unique model number attribute. All 200 existing elements are deleted and then replaced with 250 new elements with a different value for the model number attribute. The timer was placed after the Element.Delete() method and ElementDef.NewElementInHierarchy() method. What I noticed with the timer is that each element deleted was deleted faster than the previous element (so it progressively took less and less time to delete an element). And of course the opposite was noticed for inserting elements, each element inserted took longer than the previous element inserted.
    These elements can be inserted in two areas of the structure, one of the areas has fewer format rules that impact the formatting and is actually a little quicker. This led me to the cause being the EDD format rules. The area that takes longer has quite a few extensive format rules that apply. Every time an element is inserted or deleted, FrameMaker runs through those rules to format the content of the elements. Since the rules apply to parent, first, last, next, previous, etc., FrameMaker has to apply format rules to all the elements in the structure that the rules apply to (which are extremely complex because of the various elements, attribute values, and combinations that can be inserted).
    Removing or thinning down the FormatRules in the EDD, it does get quicker. But each of the FormatRules are needed. So using app.ApplyFormatRules = false; right before the elements are deleted and inserted works great. But the key is to set ApplyFormatRules back to true before deleting the last element to be deleted and before inserting the last element to be inserted, so it will cycle through all the format rules of the EDD for all the elements in the hierarchy those format rules apply to. Setting ApplyFormatRules to true and assigning the ElementDef to the last element also works [EleId.ElementDef = GV_doc.GetNamedElementDef(insElemType);], but only before any other functions are performed or different elements are added.
    doc.Reformat() isn't going to reformat the content correctly after the fact because the element was created without the format rules, so it just reformats the content of the elements without the format rules.
    The FDK version that was created 10 years ago had the same problem of running slow when a large number of elements were being inserted, but was still an improvement over having to manually insert each element and type in the attribute value, so it was lived with.
    It's now working amazingly fast. I hope my explanation of what I think is happening, including the cause/solution, is understandable.
    Sincerely,
    Trent Schwartz

  • Client Deletion Takes long time

    Hi All,
    Need help, Every month in our quality system we do client refresh so we delete existing data from quality and take export from production and Import into quality.Client Import takes 15 hrs but to delete client  it almost takes 36 hrs. There are PCL4/2/1 tables which takes more time to delete the data even not sure they will delete all the data.Looks like these are cluster tables so what can be do to have more optimize client deletion.
    To delete client from OS level is is safer side?  What can be other ways...?

    Hi
    PCL4 is not a cluster, at least on Ehp6 at DB level it is a transparent table, that means that the table does exist at both SAP & DB level.
    There is a way to process deletion faster, at least for Oracle (but it could also work for other DB)
    Create a new temporary table table with a CTAS command (copy table as select) to only include the data for the clients you want to keep.
    You can then drop the original table and rename the temporary table to the original name.
    Watch out CTAS does not copy indexes, constraints and default values.
    If you are using Oracle DB datapump query parameter can be the best option.
    You could export the data for the client you want to keep (setting a "query" option like query=" where MANDT in ('200', '300')") , truncate the table and import back the data.
    The point here is that copying / inserting new records is faster than deleting.
    Regards

  • WHEN-TREE-NODE-EXPANDED not fire with keyboard in FORMS 10G

    I have a Hierarchical Tree. When i click in any node with mouse, works fine.
    When i use the key rigth and left of the keyboard, the tree expanded, but not fire the WHEN-TREE-NODE-EXPANDED.
    In FORMS 6i works fine.

    It's a bug 4509399. There is a oneoff patch on Metalink:
    https://metalink.oracle.com/metalink/plsql/f?p=130:14:4034066994841324251::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,331369.1,1,1,1,helvetica

  • Why the LMS topology Service takes long time to reflect the device availability status?

    In the topology services map, the color status of the router takes long time to move from red to green and vice versa.
    i have already configured the time interval in the fault monitor poller setting to 6minutes but the only thing reflected the little mark at the top of the icon itself. anyhow the topology service still believe that the devices are unreachable. i have waited almost 45 minutes and nothing happened.
    please let me known the trick to make the topology services act more quicker .
    Sent from Cisco Technical Support iPhone App

    Topology Services isn't really designed to be a near real time network device up/down tool. It will an change icon's status as a result an ANI engine polling cycle or an admin operator-initiated manual device rediscovery. While you can increase the frequency of polling cycles, that's not usually such a good idea as you could make the server be polling constantly and never completing a job.
    To ascertain near real time fault status one should refer to the Fault Dashboard.

  • When-tree-node-selected not fire while navigating through keyboard(Urgent)

    i am using treeview for displaying chart of account and fires the above said trigger in the form, but the trigger has no effect whilt navigating tree view with keybpard arrow keys until user explicitly select the node through mouse help me out plzz
    i want that trigger also fires when user navigate and select node through keyboard or through mouse thanks
    its urgent

    Stop duplicating your threads!!!
    when-tree-node-selected (Urgent)
    You posted the same question 2 days ago and I've answered you, you didn't even provide an exact version of your forms.
    Posting again will not change your problem.
    Do not waste space on the forum.

  • When Parameter id  is not available how to.....

    Hi Folks,
    I have an requirement to move to the MIRO when the user presses the AWKEY in the report.But AWKEY is not having any parameter id,then in such a case how can I set this.Can I take the first three char say AWK and call transaction MIRO?
    SET PARAMETER ID 'AWK' FIELD itfinal-AWKEY.
    CALL TRANSACTION 'MIRO' AND SKIP FIRST SCREEN.
    Will this work?
    Please let me know.
    Thanks,
    K.Kiran.

    Hi,
    you can take the first three characters of AWKEY  and double click on that if it is not available then the it is created as a Repository object and in which the value is stored...
    <b>SET PARAMETER ID pid FIELD f.</b>
    This statement saves the contents of field f under the ID pid in the SAP memory. The ID pid can be up to 20 characters long. If there was already a value stored under pid, this statement overwrites it. If you double-click pid in the ABAP Editor, parameters that do not exist can be created as a Repository object.
    regards,
    Ashok Reddy

  • IPhone no longer backs up, backing up not available on menu

    My iPhone 3GS is not backing up anymore when connected to my computer, the back up option is not available on the device menu.
    How can I back it up, how can I have it restart backing up when the iPhone is connected to sync?

    Since this forum was of no help whatsoever, I did some other research myself and found a program called "Backup Switch" available at http://www.microseconds.com/
    This worked and nothing here did.

  • Query takes long when using UNION

    Hi ,
    I habe a query as follows;
    SELECT
                        '9999' site_id,
                        m.ghi_prov_num provnum,
                           SUBSTR (l.seq_num, 1, 3)provloc,
                        t.dea_number dea,
                            t.license_number statelicensenumber ,
                            n.npi_num npi,
                            m.prefix prefixname,
                            m.lastname lastname,
                            m.firstname firstname,
                            t.middle_name middleinitial,
                            m.suffix suffixname,
                            null clinicname,
                            l.street1 addressline1,
                            l.street2 addressline2,
                            l.city city,
                            l.state state,
                            l.zip5 zip,
                            l.phone phoneprimary,
                            null ext,
                            null fax,
                            null email,
                            null alt_phone,
                            null alt_phone_ext
                     FROM provider m, LOCATION l, npi n,TEMP_VITAL_CACTUS t,test_provider_pin pin
                      WHERE m.ghi_prov_num=l.ghi_prov_num
                          and m.ghi_prov_num=n.ghi_prov_num(+)
                          and m.ghi_prov_num=t.ghi_prov_num(+)
                          and m.tax_id=pin.tax_id
         UNION
          SELECT   
                        '9999', m.ghi_prov_num ,
                            m.location provloc,
                           null  ,
                           null  ,
                            n.npi_num  ,
                            null ,
                            m.lastname ,
                            m.firstname  ,
                            null,
                            null  ,
                            null  ,
                            m.street1  ,
                            m.street2  ,
                            m.city ,
                            m.state  ,
                            m.zip5 ,
                            m.phone  ,
                            null  ,
                            null  ,
                            null  ,
                            null  ,
                            null
                           FROM dental_provider m, npi n,test_provider_pin pin
                       WHERE m.ghi_prov_num=n.tax_id(+)
                           and m.location=n.location(+)
                            and pin.tax_id=m.ghi_prov_num;The query takes for ever;
    But Individual query takes less than a sec to execute.Is there any way can i rewrite the query?
    Please help
    Hena.

    user11253970 wrote:
    But Individual query takes less than a sec to execute.Is there any way can i rewrite the query?Have a feeling you are using Toad/SQL Navigator or similar tool which returns data one screen at a time. If so, then it does not "takes less than a sec to execute" but rather to fetch first screen of rows. When you use UNION Oracle has to return distinct rows from both queries. Therefore it must fetch not just first screen but all rows. To verify, issue first query and in yiour GUI tool click on get last screen. Then you'll know how long whole select takes. Do the same for second query. Also, do you need distinct rows or akll rows? IF all rows, change UNION to UNION ALL.
    SY.

  • Printing fails when first page number not 1

    I am working on system 10.3.3, with an ibook G4, using Appleworks 6.2.9. I need to print some documents in succession, I don't want to merge them to one, because they are large, and anyway I prefer separate chapters to be separate documents.
    I went to "Format-Document-page numbering start at page", and changed to the proper number. When I try and print, I get only the first page and then it stops. I have tried it also on another computer, working with Tiger, same problem. I tried to see Preview - same thing, I only see the first page, same thing if I save as PDF from the print command. Any idea? I trashed preferences, and re-set them, so this is not the problem.
    Another issue, but I don't want to start yet another topic - is it possible to prepare a Table of Contents in appleworks, in the same manner that Word does it? i.e. ask it to create table of contents by choosing specific Heading styles, or through the outline menu? I have been trying this for a long time, and found no answer in any of the help topics.

    Welcome
    Using my epson stylus photo 830SU, the feature works perfectly.
    Two tracks:
    - 1 - corrupted preferences
    - 2 - driver running wrongly. It would be fine to tell us which printer is used.
    About the TOC feature, there is not such feature in AW.
    You may visit my temp iDisk yvan_koenig.
    it contains a script to do that, in a subfolder entitled "Tabledesmatières3 ƒ"
    It is also available in :
    http://homepage.mac.com/pldelise/FileSharing4.html
    Yvan KOENIG (from FRANCE dimanche 30 octobre 2005 21:10:03)

  • SAP RM: How can I create a Node when the node is not visible for the user

    Hi,
    Product: SAP records Management for Public Sector
    Version: 7.00
    is it possible to create a instance node when the model not is not visible for the active user?
    I looked in the CL_SRM_XML_REC_MODEL but every methode I used gave me no results with the special user.
    Regards and thanks for every beginning
    Fanninger Thomas

    Hi,
    here an example.
    When I use the method CL_SRM_XML_REC_INSTANCE->IF_SRM_XML_POID~GET_ALL( POID_TAB COUNT_USER_REST COUNT_POID_AUTH ).
    When I used the user with no right for viewing the invisible nodes I get no elements in the tabelle POID_TAB and 38 in the value COUNT_USER_REST.
    So did any one know a solution you can I create a nodes and change the restriction for the new node with the normal user?
    Regards
    Fanninger Thomas
    Edited by: Thomas Fanninger on Feb 5, 2008 8:15 AM

  • OIM Client application development using OIM API, when user password is not available

    I am developing a cleint application for OIM. The client application is a set of services, running on a separate server from where OIM is running.
    The OIM version used is 11gR2.
    As I look into the oimClient object, the login method takes username and password. As my application is in an SSO environment, I do not have the password for the user, and just have the user's login ID.
    If I am correct, the tcUtilityFactory allowed a digital signature option, to support scenarios like the above.
    Question is, does oimClient support similar functionality? I did not find any examples in the Oracle documentation.
    I will appreciate if someone can confirm a similar usage and provide me some sample code and configuration details.
    Thanks.
    -subrata

    Check: http://www.ateam-oracle.com/authenticating-oim-apis-without-end-users-password/
    -Bikash

  • How to display a message in dashboard when the source is not available

    Hi,
    I had a requirement to display a custom message in the dashboard instead of showing the default error message like "Client commands are disabled by administrator" when the source is unavailble for the reports. I'm using Essbase as the source and when the cube is loaded, i have to dispaly the custom message and to hide all the reports in the dashboard, any suggestions are highly appreciated and will be highly helpful to me.
    Thanks
    Ashik

    Hi,if i understand your question....
    i believe you can manage it in 3 ways.
    1.you can make groups in order each one be able to "see" its own report..and so on...
    2.In the results section , there is a format other views-->No result, you can try it.
    3.There is a configuration in///....\OracleBI\web\msgdb\**your nls**\messages such as commmesages.xml and other , where you can handle your "error" report
    http://greekoraclebi.blogspot.com/
    ///////////////////////////////////////

Maybe you are looking for