Broker wait for all receiver to acknowledge before returning from publish()

Does the broker wait for all receiver to acknowledge before returning from publish()?
If suppose i had 10 subscribers. I observerd 10th subscriber getting message late. I thought publisher will wait for acknolodge for each subscriber ? else why it getting message late ?

I assume you are questioning why the subscriber's onMessage() is getting
called way after the publisher's publish() had returned.
The JMS publishers only know that it is sending msgs to a destination.
Whether there are 0 or 100 subscribers to the destination is something it
doesn't know or care about.
The message is sent to a destination on the broker first and then it is
delivered to the subscribers of the destination.
The publisher's publish() method will not return until the message has
been successfully delivered (and persisted if necessary) to the broker.
Note that this does not mean that the message has been successfully
received by any subscribers.

Similar Messages

  • Can't export as Html (Waiting for all files to be ready...)

    Made a bunch of updates last night to a client site.  Everything looks great except I can't export as Html. Had my sister try to export on her computer and we both get to 87%, then it permanently stalls, saying "Waiting for all files to be ready" (See screenshots). We've ensured that no files are open or being previewed. We've rebooted and tried saving to a different location, all with no change, we still get to the 87% mark and stop. Please help. I have a client waiting for this site update.
    Details:
    Windows 7
    Sony Vaio
    Muse Version - 4.1 Build 8 *see screenshot
    ****Update:
    I can preview the entire site in a browser as well as preview each page individually, but cannot finish a html export past 87%.

    Odd are if you wait long enough, potentially a few hours, it will complete.
    This huge performance hit sounds exactly like a bug that's fixed for the Muse CC 5.0 release due out next week. Sorry for the inconvenience.

  • Do you have to wait for FCPX to Render 100% before sending to Compresssor?

    Do you have to wait for FCPX to Render 100% before sending to Compresssor?
    I don't quite understand how the process works. Is FCPX rendering the footage for me to see in the viewer or is it rendering the final output as well? I had always assumed compressor did the final rendering.
    Thank you.

    Your timeline needs to be rendered prior to compressor being able to encode your vision.
    There are two processes here
    1. Rendering, creating an effect, movement or some other piece of vision that requires rendering to provide playback at 100% of the project/time line specifications.
    2. Encoding, converting your project/timeline from the editing codec, to a format suitable for delivery, eg, ProRes 422, to a web/DVD/iPhone friendly codec, eg h.264, mpg2 etc.
    hope this helps.
    Tony

  • Find Tax Return Locations for all Accounting needs, File Tax return......

    Hi dear friends
    Find Tax Return Locations for all Accounting needs, File Tax return, Business Accounting, Payroll, Income Tax, Property Tax, State Tax.
    Find a qualified local Tax Professional, CPA, Accounting Firm,  Accountant, Financial Planning from most widely used Directory.
    Our services are -- irs tax help, accounting, taxes, irs, tax debt help, payroll, income tax, property tax, tax attorney, tax, cpa, accountants, tax help, tax return, business tax return, free tax help, estate tax,
    More information visit below here --
    [FINDTAXRETURN|http://www.findtaxreturn.com/]
    Cheers
    Admin

    I have already received the TT application for 2012 filing.
    Have you checked at their website?
    http://www.turbotax.com/lp/ty11/ppc/hp.jsp?cid=ppc_gg_b_stan_dk_us_hv-trbtx-mn&a did=18494275668&skw=TurboTax&kw=turbotax&ven=gg&

  • Find Tax Return Locations for all Accounting needs, File Tax return, Busine

    Hi dear friends
    Find Tax Return Locations for all Accounting needs, File Tax return, Business Accounting, Payroll, Income Tax, Property Tax, State Tax.
    Find a qualified local Tax Professional, CPA, Accounting Firm,  Accountant, Financial Planning from most widely used Directory.
    Our services are -- irs tax help, accounting, taxes, irs, tax debt help, payroll, income tax, property tax, tax attorney, tax, cpa, accountants, tax help, tax return, business tax return, free tax help, estate tax,
    More information visit below here --
    [FINDTAXRETURN|http://www.findtaxreturn.com/]
    Cheers:)
    Admin:)

    I have already received the TT application for 2012 filing.
    Have you checked at their website?
    http://www.turbotax.com/lp/ty11/ppc/hp.jsp?cid=ppc_gg_b_stan_dk_us_hv-trbtx-mn&a did=18494275668&skw=TurboTax&kw=turbotax&ven=gg&

  • How to use for all entires clause while fetching data from archived tables

    How to use for all entires clause while fetching data from archived tables using the FM
    /PBS/SELECT_INTO_TABLE' .
    I need to fetch data from an Archived table for all the entries in an internal table.
    Kindly provide some inputs for the same.
    thanks n Regards
    Ramesh

    Hi Ramesh,
    I have a query regarding accessing archived data through PBS.
    I have archived SAP FI data ( Object FI_DOCUMNT) using SAP standard process through TCODE : SARA.
    Now please tell me can I acees this archived data through the PBS add on FM : '/PBS/SELECT_INTO_TABLE'.
    Do I need to do something else to access data archived through SAP standard process ot not ? If yes, then please tell me as I am not able to get the data using the above FM.
    The call to the above FM is as follows :
    CALL FUNCTION '/PBS/SELECT_INTO_TABLE'
      EXPORTING
        archiv           = 'CFI'
        OPTION           = ''
        tabname          = 'BKPF'
        SCHL1_NAME       = 'BELNR'
        SCHL1_VON        =  belnr-low
        SCHL1_BIS        =  belnr-low
        SCHL2_NAME       = 'GJAHR'
        SCHL2_VON        =  GJAHR-LOW
        SCHL2_BIS        =  GJAHR-LOW
        SCHL3_NAME       =  'BUKRS'
        SCHL3_VON        =  bukrs-low
        SCHL3_BIS        =  bukrs-low
      SCHL4_NAME       =
      SCHL4_VON        =
      SCHL4_BIS        =
        CLR_ITAB         = 'X'
      MAX_ZAHL         =
      tables
        i_tabelle        =  t_bkpf
      SCHL1_IN         =
      SCHL2_IN         =
      SCHL3_IN         =
      SCHL4_IN         =
    EXCEPTIONS
       EOF              = 1
       OTHERS           = 2
       OTHERS           = 3
    It gives me the following error :
    Index for table not supported ! BKPF BELNR.
    Please help ASAP.
    Thnaks and Regards
    Gurpreet Singh

  • How to make it a default for all received messages to not preview the attachment but instead show the icon? (mac mail.app)

    Hi
    I am having trouble with large incoming mail attachments.
    When I receive a large attachment (pDf) the useful mail preview feature attempts to show a preview of the attachment.  Unfortunately this is causing a lot of trouble as some PDFs are extremely large and therefore take time to open/preview.   If I right click the attachment and select view as icon, the problem with that specific message ceases as the attachment is no longer previewed.
    How can I make it the default for all attachments in received messages to only be shown as a icon and not previewed?

    In Terminal,
    defaults write com.apple.mail DisableInlineAttachmentViewing -bool Yes

  • HT1390 Do I have to wait for movie rental to download before I can watch it?

    Do I have to wait for a movie rental to completely download before I watch it?

    It can take the card up to 24 hours to activate after the point of purchase, but if its past 24 hours from when you bought it, the card must not have been activated properly at the register, which is the sole responsibility of the retailer. 

  • BAPI_GOODSMVT_CREATE for all expired Materials changed to blocked from rest

    here are my requirements
    The current functionality in SAP takes a Material and changes it from “Unrestricted” to “Restricted” at the time of Material Expiry.
    The Following Functionality is required:
    •     Upon automatically running a batch job the system will check for all expired Materials with a stock status of “Restricted” and change that status to “Blocked”
    i have to call Call 'BAPI_GOODSMVT_CREATE' function module for creating the material document
    Upon running Batch job, the program will look in table MCH1 for all Batch/Material combinations that have an expired SLED (field: VFDAT).
    After finding all expired Batch/Material combinations in step one the program will then use that data to locate the associated Plants (field: WERKS) and Storage Locations (field: LGORT) in table MCHB
    where BAPI2017_GM_CODE-GM_CODE  = 04(Transfer Posting).
    my question is after passing the selcted data into GOODSMVT_ITEM will the materials that i have selcted will automatically be changed from “Restricted” and change that status to “Blocked”
    id so what would be the correct GOODSMVT_ITEM-MOVE_TYPE
    please help

    here are my requirements
    The current functionality in SAP takes a Material and changes it from “Unrestricted” to “Restricted” at the time of Material Expiry.
    The Following Functionality is required:
    •     Upon automatically running a batch job the system will check for all expired Materials with a stock status of “Restricted” and change that status to “Blocked”
    i have to call Call 'BAPI_GOODSMVT_CREATE' function module for creating the material document
    Upon running Batch job, the program will look in table MCH1 for all Batch/Material combinations that have an expired SLED (field: VFDAT).
    After finding all expired Batch/Material combinations in step one the program will then use that data to locate the associated Plants (field: WERKS) and Storage Locations (field: LGORT) in table MCHB
    where BAPI2017_GM_CODE-GM_CODE  = 04(Transfer Posting).
    my question is after passing the selcted data into GOODSMVT_ITEM will the materials that i have selcted will automatically be changed from “Restricted” and change that status to “Blocked”
    id so what would be the correct GOODSMVT_ITEM-MOVE_TYPE
    please help

  • How do I set the about:config settings for all users? iprism keeps prompting from authentication for users.

    When users log on and try to open Firefox 23.0.1, users are prompted with Iprism Authentication. We made changes to the firefox about:config values "network.automatic-ntlm-auth.allow.-non-fqdn" and "Network.negotiate-auth.allow-non-fqdn" to true and it works, but only works on a per user basis. How can we set this up for all users?

    I would think the about:config entries discussed are ex-factory set to values each user has to change individually, after the installation has run its course. The solution could be to have patched files ready to install post factum:
    [https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/A_brief_guide_to_Mozilla_preferences A Brief Guide to Mozilla Preferences - MDN]

  • Message monitoring Status Waiting for email receiver

    Hi Guru,
    Scenario:  SAP ECC will call Error Handling interface class. The communication channel for the Error Handling interface is Email Adapter.
    Below is CC setting:
    Adapter Type: Mail  (Receiver)
    Transport Protocol: SMTP
    Message Protocol: XIALL
    Adapter Engine: Integration Server
    URL: smtp://11.11.11.111/
    Check - Configure User Authentication
    User : user1
    Password: password
    Mail Attributes:
      From: [email protected]
      To    : [email protected]
      Subject : test
      Content Encoding: base64
    I encountered one problem where my email receiver status in message monitoring is always 'Waiting'. I do not know what went wrong in the setting? Does anyone know how to solve my problem ?
    Thanks in advance.
    Regards

    XI tries 3 times before changing the status of the message to System Error. One can Manually resend the error messages by using the RESEND button in RWB. In scenarios where XI was trying to send the message to an end system that was down for maintenance, you would want XI to resubmit the message automatically without human intervention. What would be nice is to able to tune the retries like IS_Retry which is available for Integration engine.
    We can achieve this by changing the retry count used by the Adapter Engine, by default its set to 3 times, 5 minutes apart. This count can be changed in Visual Admin->server->services-> SAP XI Adapter: XI.
    Here  change the number Retries parameter from 3 to 10 and change the retry retryInterval to around 10minutes. For these configuration changes to be picked up, restart SAP XI Adapter: XI.
    please visit the blog
    /people/sap.user72/blog/2005/11/29/xi-how-to-re-process-failed-xi-messages-automatically

  • Force textInput to wait for all characters?

    I have a problem with getting text from a text box before the text entry is complete.
    Here's the issue: I am using a speech-recognition program to convert spoken words to typed text; thus, when I speak a word, it is typed (like via keyboard) into a TextInput field. 
    I would like the program to "check" the text in this TextInput when a spacebar keyboard down event is triggered.  So I've tried adding a keyboard event listener like so:
    typedInput.addEventListener(KeyboardEvent.KEY_DOWN, checkKey) // turn on keyboard listener
    private function checkKey(keypress:KeyboardEvent):void { // handle keypress triggers
    if (keypress.keyCode == 32) {
         // if spacebar is pressed, check the text of the input box to see if it is correct
         if (typedInput.text == nextWord)  trace("Successful word match! Typed input: "+typedInput.text);
         else
         // if incorrect, highlight the word in orange; if already orange, highlight in red and call the word audio
         trace ("Incorrect spoken word. Typed input: "+typedInput.text);
    typedInput.text = "";
    So basically it should check the TextInput and compare against a string, once spacebar is pressed.
    The problem is... the results are sporadic; sometimes it triggers the spacebar event before being able to get any text in the input; sometimes it might grab the first letter or two.
    Another problem might be that this event listener is listening to EVERY keystroke when all I really care about is listening for the spacebar.
    I've tried adding the keyboard event listener to the state instead of the text input, but it doesn't seem to make any difference.
    Any ideas on how to get this to work? I'm going to see if I can use my third-party program (GlovePIE) to map spacebar to enter key instead, and then be able to use the "enter" event for the textinput, but otherwise I'm at a loss... either it's taking too long because it has to check every keystroke, or the keystrokes are coming so fast that the event handler is finished before the text input element can even register that it has been input.
    Would it be better to use a "change" event on the text handler? If so, how would I go about checking each new character typed into the input?

    Hmm, I got it to work okay by using a timer to force a wait, like so:
    private function checkKey(keypress:KeyboardEvent):void {
    if (keypress.keyCode == 32) {
    // if spacebar is pressed, check the text of the input box to see if it is correct
    var timer:Timer = new Timer(10,1);
    timer.addEventListener(TimerEvent.TIMER_COMPLETE, timeupHandler);
    timer.start();
    function timeupHandler(event:TimerEvent):void {
         if (typedInput.text == nextWord) {
         // if correct, change color of the word and increment to the next word on the page
         trace("Successful spoken word match! Typed input: "+typedInput.text);
         else {
         // if incorrect, highlight the word in orange; if already orange, highlight in red and call the word audio
         trace ("Incorrect spoken word. Typed input: "+typedInput.text);
         typedInput.text = "";
    However, this really seems like a hack that I'd like to avoid -- for one thing, I don't want to slow down the system any more than necessary (ie. if it only takes 3 milliseconds to get all the letters in place, why wait 10 every time?), and for another it seems like it would be machine-dependent (processor, etc.)  So this is a hack, not a real solution (unless there is no better solution)
    I will try converting spacebar to enter and see how that works with an "enter" listener on the input.  (But even this will create a small amount of lag)

  • Safari waits for external drives to spin before showing content (chrome does not)

    Why?  And more importantly how to stop that?  I think it's always been that way but since installing lion i decided to switch back to safari over chrome because i like the trackpad gestures.  Chrome loads content regardless of external drives powered down or not. 
    Same stupid behaviour with the dictionary... Why on earth does the dictionary need to spin up all my external drives to give me a definition?
    I like the new features but not as much as reading content from any Apple app immediatly.

    This must be a bug, because I'm observing the exact same behavior. Lion thinks it needs to spin up the external drives for the same reasons, and sometimes before displaying a dialog box.

  • Wait for all threads in a array to die

    I everyone. I'm from Portugal and I have some experience in JAVA programming (approximately five years) but this is the first the first time that i'm trying to use threads. I'm trying to learn writing some simpler code that does almost exactly at the basic level the same stuff that a complex application that I need to write for my work.
    What I'm trying to do is execute a counter that counts all operations in threads belonging to the same array (an array of n threads).
    A static variable in the Thread class (implementing Runnable) counts all operations performed by all threads and sums them all and shoud display the total of operations after all threads terminate, but this exactly what I don't know how to do:
    This is my example code:
    public class TT1 implements Runnable {
         int id;
         double last_number;
         static int threads_counter = 0;
         static int total_threads = 4;
         static long total_numbers;
         int total_randoms = 1000;
         public void run() {
              for (int i=0;i<total_randoms;i++)
                   total_numbers++;
                   // does some stuff, in this case, generate a random number!
                   last_number = Math.random();
              System.out.printf("Thread %d:%f(%d)\n",id,last_number,total_numbers);
         public TT1() {
              id = threads_counter++;
              new Thread(this).start();
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              Thread [] threads = new Thread[total_threads];
              for (int i=0;i<threads.length;i++)
                   threads[i] = new Thread(new TT1());
              /* commented code using join(), is not working or I don't know
              how to use it! */
              for (int i=0;i<threads.length;i++)
                   try {
                        threads.join();
                   } catch (InterruptedException e) {
                        e.printStackTrace();
              try {
                   threads[total_threads-1].join();
              } catch (InterruptedException e) {
                   e.printStackTrace();
              // this line should be executed ONLY after ALL threads have died!
              System.out.println("******GENERATED NUMBERS TOTAL:" + total_numbers);
    Somebody can give me a hint how to solve this ?

    Thanks for your replies.
    Actually, i've corrected the code, now i'm starting the threads outside the constructor. Originally I thought this could be a simpler way to create the threads: launching them at same time I'm creating them! Is this wrong ? :) Well, watching the results.
    I changed my code:
    public class TT1 implements Runnable {
         int id;
         double last_number;
         static int threads_counter = 0;
         static int total_threads = 4;
         static long total_numbers;
         int total_randoms = 1000;
         public void run() {
              for (int i=0;i<total_randoms;i++)
                   total_numbers++;
                   // does some stuff, in this case, generate a random number!
                   last_number = Math.random();
              System.out.printf("Thread %d:%f(%d)\n",id,last_number,total_numbers);
         public TT1() {
              id = threads_counter++;
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              Thread [] threads = new Thread[total_threads];
              /* create individual threads */
              for (int i=0;i<threads.length;i++)
                   threads[i] = new Thread(new TT1());
              /* launch the threads (NEW CODE) */
              for (int i=0;i<threads.length;i++)
                   threads.start();
              /* commented code using join(), is not working or I don't know
              how to use it! */
              for (int i=0;i<threads.length;i++)
                   try {
                        threads[i].join();
                   } catch (InterruptedException e) {
                        e.printStackTrace();
              // this line should be executed ONLY after ALL threads have died!
              System.out.println("******GENERATED NUMBERS TOTAL:" + total_numbers);
    And I obtain the output:
    $ java TT1
    Thread 0:0,191546(1000)
    Thread 1:0,937476(2000)
    Thread 2:0,825079(3000)
    Thread 3:0,451367(4000)
    ******GENERATED NUMBERS TOTAL:4000Exactly as I want it!
    All is good when it works good ;)
    Best regards

  • "expand role" nt waiting for all users in the role to view the notification

    I have created adhoc roles using the following code.
    lv_user_list_txt := 'SYSTECH'||','||'FNATECH';
    wf_directory.createadhocrole (lv_role_name_txt, lv_role_display_txt);
    wf_directory.adduserstoadhocrole (lv_role_name_txt, lv_user_list_txt);
    I have assigned it to the Item attribute of type 'Role' using the following code.
    wf_engine.setitemattrtext (
    itemtype => itemtype,
    itemkey => itemkey,
    aname => 'LIST_OF_APPROVER',
    avalue => lv_role_name_txt
    I have checked the 'Expand role' check box in the notification and assigned the performer as the Item attribute(Role type) 'LIST_OF_APPROVER'.
    But when one user in the role approves or rejects, the notification of the other user is cancelled. the other user can no longer view the notification.
    Ideally, after checking the 'Expand role', the workflow should not proceed to the next node until, all the user have performed an action. But this is not happening. Please help on this :(
    Thanks in Advance.
    Anitha.

    yes, I did. I spent at least 8 hours searching for a solution here, in the forums and tried everything making sense... The EFI downgrade was the only thing that helped.
    My personal opinion is: Apple should offer the EFI downgrade option to all users in an official way. It looks like my favorite vendor does not want to admit they made a hardware+software mistake (the EFI 1.7 update solves some HDD issues on some new MBPs but causes other problems on other MBPs).
    Message was edited by: Bartek Bargiel

Maybe you are looking for