Details

    • Type: Bug
    • Status: Deployed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 4.5.5.011, 5.1.3.18
    • Fix Version/s: 5.1.4.7
    • Labels:
      None
    • Sprint:
      April 2017 Sprint

      Description

      When starting up the server and sending multiple requests to it the number of times and order of running onApplicationStart and onRequestStart is not consistent.

      In multiple occasions it is seen that onApplicationStart is executed multiple times when more calls come in in the same milisecond.
      It has also been observed that onRequeststart runs before onApplicationStart when starting the application.

      Some results:

      – as expected –
      "INFO","http-bio-8080-exec-3","03/28/2017","14:27:47","","onApplicationStart started. (1490704067202)"
      "INFO","http-bio-8080-exec-3","03/28/2017","14:27:48","","onApplicationStart ended. (1490704068212)"
      "INFO","http-bio-8080-exec-10","03/28/2017","14:27:48","","onRequestStart called. (1490704068217)"
      "INFO","http-bio-8080-exec-1","03/28/2017","14:27:48","","onRequestStart called. (1490704068218)"
      "INFO","http-bio-8080-exec-6","03/28/2017","14:27:48","","onRequestStart called. (1490704068217)"
      "INFO","http-bio-8080-exec-4","03/28/2017","14:27:48","","onRequestStart called. (1490704068220)"
      "INFO","http-bio-8080-exec-7","03/28/2017","14:27:48","","onRequestStart called. (1490704068215)"
      "INFO","http-bio-8080-exec-9","03/28/2017","14:27:48","","onRequestStart called. (1490704068219)"
      "INFO","http-bio-8080-exec-2","03/28/2017","14:27:48","","onRequestStart called. (1490704068216)"
      "INFO","http-bio-8080-exec-5","03/28/2017","14:27:48","","onRequestStart called. (1490704068216)"
      "INFO","http-bio-8080-exec-8","03/28/2017","14:27:48","","onRequestStart called. (1490704068218)"
      "INFO","http-bio-8080-exec-3","03/28/2017","14:27:48","","onRequestStart called. (1490704068227)"

      – multiple onApplicationStart –
      "INFO","http-bio-8080-exec-2","03/28/2017","14:29:05","","onApplicationStart started. (1490704145184)"
      "INFO","http-bio-8080-exec-6","03/28/2017","14:29:05","","onApplicationStart started. (1490704145184)"
      "INFO","http-bio-8080-exec-7","03/28/2017","14:29:05","","onApplicationStart started. (1490704145184)"
      "INFO","http-bio-8080-exec-2","03/28/2017","14:29:06","","onApplicationStart ended. (1490704146196)"
      "INFO","http-bio-8080-exec-6","03/28/2017","14:29:06","","onApplicationStart ended. (1490704146198)"
      "INFO","http-bio-8080-exec-4","03/28/2017","14:29:06","","onRequestStart called. (1490704146204)"
      "INFO","http-bio-8080-exec-2","03/28/2017","14:29:06","","onRequestStart called. (1490704146204)"
      "INFO","http-bio-8080-exec-7","03/28/2017","14:29:06","","onApplicationStart ended. (1490704146201)"
      "INFO","http-bio-8080-exec-6","03/28/2017","14:29:06","","onRequestStart called. (1490704146207)"
      "INFO","http-bio-8080-exec-7","03/28/2017","14:29:06","","onRequestStart called. (1490704146213)"
      "INFO","http-bio-8080-exec-9","03/28/2017","14:29:06","","onRequestStart called. (1490704146210)"
      "INFO","http-bio-8080-exec-3","03/28/2017","14:29:06","","onRequestStart called. (1490704146209)"
      "INFO","http-bio-8080-exec-1","03/28/2017","14:29:06","","onRequestStart called. (1490704146209)"
      "INFO","http-bio-8080-exec-8","03/28/2017","14:29:06","","onRequestStart called. (1490704146209)"
      "INFO","http-bio-8080-exec-5","03/28/2017","14:29:06","","onRequestStart called. (1490704146206)"

      – multiple onRequestStart with a running onApplicationStart –
      "INFO","http-bio-8080-exec-2","03/28/2017","14:28:03","","onRequestStart called. (1490704083165)"
      "INFO","http-bio-8080-exec-8","03/28/2017","14:28:03","","onRequestStart called. (1490704083177)"
      "INFO","http-bio-8080-exec-9","03/28/2017","14:28:03","","onRequestStart called. (1490704083176)"
      "INFO","http-bio-8080-exec-10","03/28/2017","14:28:03","","onRequestStart called. (1490704083165)"
      "INFO","http-bio-8080-exec-5","03/28/2017","14:28:03","","onRequestStart called. (1490704083166)"
      "INFO","http-bio-8080-exec-6","03/28/2017","14:28:03","","onRequestStart called. (1490704083165)"
      "INFO","http-bio-8080-exec-4","03/28/2017","14:28:03","","onRequestStart called. (1490704083165)"
      "INFO","http-bio-8080-exec-7","03/28/2017","14:28:03","","onRequestStart called. (1490704083166)"
      "INFO","http-bio-8080-exec-1","03/28/2017","14:28:03","","onApplicationStart started. (1490704083166)"
      "INFO","http-bio-8080-exec-3","03/28/2017","14:28:03","","onRequestStart called. (1490704083165)"
      "INFO","http-bio-8080-exec-1","03/28/2017","14:28:04","","onApplicationStart ended. (1490704084215)"
      "INFO","http-bio-8080-exec-1","03/28/2017","14:28:04","","onRequestStart called. (1490704084217)"

      Testing was done by creating an Application.cfc in a server. The application.cfc is added here. After that the webserver was started (in this case NGinx) When starting tomcat a file is executed with the following calls (This has also been tested without the URL variables):

      #!/bin/bash
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &
      curl -s "http://test.local/test.cfm?cfid=C296C4D9-3323-4C15-8094-D12E664A893C893C&cftoken=0" > /dev/null &

        Attachments

        1. Application.cfc
          2 kB
        2. Application.cfc
          0.7 kB
        3. test.zip
          5 kB

          Issue links

            Activity

              People

              • Assignee:
                michaeloffner Michael Offner
                Reporter:
                Darathorn Mark van Hedel
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: