Behaviour of AP Timers

Hi there,
I am currently fumbling around a little bit with the AP timers on our WLCs in order to improve convergence.
For this I activated the fast heartbeat for local mode APs.
The documentation states the normal heartbeat timer must be at least 3 times larger than the fast heartbeat timer.
Also for the AP to switch the WLC it takes to heartbeats and after those fail 7 heartbeats every second.
That would be 17 seconds with a fast heartbeat timer of 5 seconds.
I am a little bit confused regarding the relation of the heartbeat timer to the fast heartbeat timer.
As I understood the local mode APs only rely on this fast heartbeat timer and don't care of the normal one anymore.
Why should I be concerned if the normal heartbeat is not 3 times larger?
I then decided to just put it to the test and see how fast the AP converge. It took the AP about 21 seconds. I expected this variance of 4 seconds to be the preceding heartbeat, during which I denied the AP access to the primary controller.
When allowing access of the AP to the primary controller again it took about 114 seconds to switch back.
I suspect this is due to the AP Primary Discovery Timeout with a default of 120 seconds. Is this assumption correct?
I cannot explain otherwise as heartbeat messages are only sent to the current associated WLC.
I also noticed when configuring them over the CLI there is a new timer:
config advanced timers ap-primed-join-timeout
According to the CLI description:
Configures AP Primed Discovery Timeout value between 120 and 43200 seconds(12 hours).
Can someone elaborate on this command please?

Instead of posting a new discussion I will use my old thread.
The issue above is mostly solved my testing around although I still havent found out what the config advanced timers ap-primed-join-timeout does as well as the 1:3 relation between heartbeat and fast-heartbeat. If anyone knows I would be grateful for the information.
Before I come to my actual question here some background information just for the sake of completeness:
During the event of a controller outage the AP sends 5 retransmission packets by default in a 3 second interval when using the normal heartbeat.
AP Debug output:
*Feb  8 11:40:01.449: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:40:01.468: %CAPWAP-3-EVENTLOG: Queue Empty.*Feb  8 11:40:01.468: %CAPWAP-3-EVENTLOG: Wtp Event Response from *Feb  8 11:40:31.469: %CAPWAP-3-EVENTLOG: Echo Interval Expired.*Feb  8 11:40:31.469: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:40:31.469: %CAPWAP-3-EVENTLOG: Echo Request sent to *Feb  8 11:40:34.470: %CAPWAP-3-EVENTLOG: Retransmission Count= 0 Max Re-Transmission Value=5*Feb  8 11:40:34.470: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:40:37.471: %CAPWAP-3-EVENTLOG: Retransmission Count= 1 Max Re-Transmission Value=5*Feb  8 11:40:37.471: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:40:40.472: %CAPWAP-3-EVENTLOG: Retransmission Count= 2 Max Re-Transmission Value=5*Feb  8 11:40:40.472: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:40:43.473: %CAPWAP-3-EVENTLOG: Retransmission Count= 3 Max Re-Transmission Value=5*Feb  8 11:40:43.473: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:40:46.474: %CAPWAP-3-EVENTLOG: Retransmission Count= 4 Max Re-Transmission Value=5*Feb  8 11:40:46.474: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:40:49.475: %CAPWAP-3-EVENTLOG: Retransmission Count= 5 Max Re-Transmission Value=5*Feb  8 11:40:49.475: %CAPWAP-3-EVENTLOG: Max retransmission count exceeded going back to DISCOVER mode.*Feb  8 11:40:49.475: %CAPWAP-3-EVENTLOG: The function which Posted the message to send out of the box is wtpSendEchoReques and of Type=1
If fast-heartbeat is configured the retransmission packet count goes down to 3 although the 3 second interval remains.
AP Debug output:
*Feb  8 11:55:51.081: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb  8 11:55:51.100: %CAPWAP-3-EVENTLOG: Queue Empty.*Feb  8 11:55:51.100: %CAPWAP-3-EVENTLOG: Wtp Event Response from *Feb  8 11:55:51.100: %CAPWAP-3-EVENTLOG: HeartBeat response from *Feb  8 11:55:56.083: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:55:56.083: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb  8 11:55:59.084: %CAPWAP-3-EVENTLOG: Retransmission Count= 0 Max Re-Transmission Value=3*Feb  8 11:55:59.084: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:56:01.085: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb  8 11:56:02.085: %CAPWAP-3-EVENTLOG: Retransmission Count= 1 Max Re-Transmission Value=3*Feb  8 11:56:02.085: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:56:05.086: %CAPWAP-3-EVENTLOG: Retransmission Count= 2 Max Re-Transmission Value=3*Feb  8 11:56:05.086: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 11:56:06.087: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb  8 11:56:08.087: %CAPWAP-3-EVENTLOG: Retransmission Count= 3 Max Re-Transmission Value=3*Feb  8 11:56:08.087: %CAPWAP-3-EVENTLOG: Max retransmission count exceeded going back to DISCOVER mode.*Feb  8 11:56:08.087: %CAPWAP-3-EVENTLOG: The function which Posted the message to send out of the box is spamSendFastHeartbeatReques and of Type=21
I checked the timers via show ap retransmit all
(WLC) >show ap retransmit all  Global control packet retransmit interval: 3 (default) Global control packet retransmit count: 5 (default)AP Name             Retransmit Interval  Retransmit count------------------  -------------------  -------------------Access-Point             3 (default)      5 (default)
It only shows the timers for the normal heartbeat procedure.
I then proceeded to change the retransmit count parameter to 8
(WLC) >show ap retransmit all Global control packet retransmit interval: 3 (default)Global control packet retransmit count: 8AP Name             Retransmit Interval  Retransmit count------------------  -------------------  -------------------Access-Point             3 (default)      8
With fast heartbeat disabled it turned out that during a heartbeat timeout the retransmit count will use the new value of 8.
*Feb 8 12:04:12.679: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:12.981: %CAPWAP-3-EVENTLOG: Echo Interval Expired.*Feb 8 12:04:12.981: %CAPWAP-3-EVENTLOG: Echo Request sent to *Feb 8 12:04:15.680: %CAPWAP-3-EVENTLOG: Retransmission Count= 0 Max Re-Transmission Value=8*Feb 8 12:04:15.680: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:18.681: %CAPWAP-3-EVENTLOG: Retransmission Count= 1 Max Re-Transmission Value=8*Feb  8 12:04:18.681: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:21.683: %CAPWAP-3-EVENTLOG: Retransmission Count= 2 Max Re-Transmission Value=8*Feb 8 12:04:21.683: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:24.684: %CAPWAP-3-EVENTLOG: Retransmission Count= 3 Max Re-Transmission Value=8*Feb 8 12:04:24.684: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:27.685: %CAPWAP-3-EVENTLOG: Retransmission Count= 4 Max Re-Transmission Value=8*Feb 8 12:04:27.685: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:30.686: %CAPWAP-3-EVENTLOG: Retransmission Count= 5 Max Re-Transmission Value=8*Feb 8 12:04:30.686: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:33.687: %CAPWAP-3-EVENTLOG: Retransmission Count= 6 Max Re-Transmission Value=8*Feb 8 12:04:33.687: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:36.688: %CAPWAP-3-EVENTLOG: Retransmission Count= 7 Max Re-Transmission Value=8*Feb 8 12:04:36.688: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:04:39.689: %CAPWAP-3-EVENTLOG: Retransmission Count= 8 Max Re-Transmission Value=8*Feb 8 12:04:39.689: %CAPWAP-3-EVENTLOG: Max retransmission count exceeded going back to DISCOVER mode.*Feb 8 12:04:39.689: %CAPWAP-3-EVENTLOG: The function which Posted the message to send out of the box is lwapp_send_rm_data_reques and of Type=8
Now when I enabled fast-heartbeat again and did a test I noticed that the AP now also sends 8 retransmissions before it changes to the backup WLC
*Feb  8 12:09:06.155: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb  8 12:09:06.155: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb  8 12:09:09.156: %CAPWAP-3-EVENTLOG: Retransmission Count= 0 Max Re-Transmission Value=8*Feb 8 12:09:09.156: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:11.157: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:09:12.157: %CAPWAP-3-EVENTLOG: Retransmission Count= 1 Max Re-Transmission Value=8*Feb 8 12:09:12.157: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:15.158: %CAPWAP-3-EVENTLOG: Retransmission Count= 2 Max Re-Transmission Value=8*Feb 8 12:09:15.158: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:16.158: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:09:18.159: %CAPWAP-3-EVENTLOG: Retransmission Count= 3 Max Re-Transmission Value=8*Feb 8 12:09:18.159: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:21.160: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:09:21.160: %CAPWAP-3-EVENTLOG: Retransmission Count= 4 Max Re-Transmission Value=8*Feb 8 12:09:21.160: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:24.161: %CAPWAP-3-EVENTLOG: Retransmission Count= 5 Max Re-Transmission Value=8*Feb 8 12:09:24.161: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:26.162: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:09:27.162: %CAPWAP-3-EVENTLOG: Retransmission Count= 6 Max Re-Transmission Value=8*Feb 8 12:09:27.162: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:30.163: %CAPWAP-3-EVENTLOG: Retransmission Count= 7 Max Re-Transmission Value=8*Feb 8 12:09:30.163: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:09:31.163: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:09:31.173: %CAPWAP-3-EVENTLOG: Echo Interval Expired.*Feb 8 12:09:31.173: %CAPWAP-3-EVENTLOG: Echo Request sent to *Feb 8 12:09:33.164: %CAPWAP-3-EVENTLOG: Retransmission Count= 8 Max Re-Transmission Value=8*Feb 8 12:09:33.164: %CAPWAP-3-EVENTLOG: Max retransmission count exceeded going back to DISCOVER mode.*Feb 8 12:09:33.164: %CAPWAP-3-EVENTLOG: The function which Posted the message to send out of the box is spamSendFastHeartbeatReques and of Type=21
I then decided to switch back to the default retransmit count value of 5 but noticed that the default label is now missing in the WLC config:
(WLC) >show ap retransmit all  Global control packet retransmit interval: 3 (default) Global control packet retransmit count: 5AP Name             Retransmit Interval  Retransmit count------------------  -------------------  -------------------Access-Point             3 (default)      5
I did another debug with fast-heartbeat enabled which confirmed my suspicion. The retransmit count stays at 5 counts instead of only 3.
*Feb 8 12:13:40.221: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:13:40.221: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:13:43.222: %CAPWAP-3-EVENTLOG: Retransmission Count= 0 Max Re-Transmission Value=5*Feb 8 12:13:43.222: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:13:45.222: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:13:46.223: %CAPWAP-3-EVENTLOG: Retransmission Count= 1 Max Re-Transmission Value=5*Feb 8 12:13:46.223: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:13:49.224: %CAPWAP-3-EVENTLOG: Retransmission Count= 2 Max Re-Transmission Value=5*Feb 8 12:13:49.224: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:13:50.224: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:13:52.225: %CAPWAP-3-EVENTLOG: Retransmission Count= 3 Max Re-Transmission Value=5*Feb 8 12:13:52.225: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:13:55.226: %CAPWAP-3-EVENTLOG: HeartBeat request sent to *Feb 8 12:13:55.226: %CAPWAP-3-EVENTLOG: Retransmission Count= 4 Max Re-Transmission Value=5*Feb 8 12:13:55.226: %CAPWAP-3-EVENTLOG: Sending packet to AC*Feb 8 12:13:58.227: %CAPWAP-3-EVENTLOG: Retransmission Count= 5 Max Re-Transmission Value=5*Feb 8 12:13:58.227: %CAPWAP-3-EVENTLOG: Max retransmission count exceeded going back to DISCOVER mode.*Feb 8 12:13:58.227: %CAPWAP-3-EVENTLOG: The function which Posted the message to send out of the box is spamSendFastHeartbeatReques and of Type=21
Now to my question:
Is there any way to restore the default behaviour of the timers?
I didn’t find a command to clear this configuration, already tried to reboot the WLC, but nothing helped.
Any help appreciated.

Similar Messages

  • Cursor changes to "Busy" when timers expires in Form

    Forms 10.1.2.0.2
    I created a Form with a multinline block to implement a blinking effect on certain rows depending on certain conditions
    whilst using a repeating timer.
    The screen is working fine so far but I am facing the problem that the cursor automatically changes its status from
    normal to busy for a moment and then back from busy to normal when the timers expires.
    In addition, the status bar on the console (which is the lower right working status bar) displays a "working"
    condiition when the timers expires (scrolling from left to right each time the timer expires).
    This leads to annoying visible effects as not only my rows are blinking fine but also the cursor does -.-
    I removed the Synchronze; Built-In from the WHEN-TIMER-EXPIRED and also replaced any data processing within
    the Trigger by a Null; Statement but the cursor keeps on changing its Form automatically.
    I also tried to set the Cursor style to default within this Trigger but the cursor keeps on changing its Form.
    Is there any way to suppress this behaviour ?

    Hi,
    Do you have any security programs installed on your computer? If so, temperarily turn off them to check if this issue persists.
    We can also try to run Word in safe mode to test if the issue is caused to a problematic add-in. To do this, press Windows key + R, type
    Winword.exe /safe in the Run dialog and press Enter. 
    In addition, did you installed any printer drivers? If so, some bad printer drivers may cause such issue. Please make sure you have installed the latest printer driver form the official website. If possible, we can try to uninstall the printer drivers
    to check if the issue persists.
    Regards,
    Steve Fan
    TechNet Community Support

  • A doubt in mutilthreading behaviour

    Dear experts,
    I have created a multithreading program in java.When i click a start button,i
    see helicopter moving across the sky.I click another button and a new thread get
    created and this time i see two helicopters flying.In this way as i keep pressing
    start number of helicopters are increasing.
    But i find as i keep on looking at taskbar CPU usage is increasing everytime i click on
    start.And after clicking about 50 times ,CPU show 100% usage and virtual memory come
    in function.This time more than 50 helicopters are visible flying.
    With so many helicopters ,speed of each helicopter is very very slow and looks as if system
    is in too much load.Is this behaviour normal in multithreading for java ?.

    My guess is you have busy loops somewhere. In any case this is far from normal behavior. Are you making threads sleep until it is time for a helicopter to move again?
    You may want to invest some time into studying timers. With those you can do updates at specific intervals, leaving all the sleep logic to Java.

  • How to cancel Timers permanently?

    We are running our application in Weblogic 10.3. We have an EJB timer that runs all the time and kicks off a piece of code every x minutes. The problem is when an Exception happens and we cancel the timer the timer gets cancelled but some references still remain in the memory which will cause issues when the next time we run the application. (A new timer is then created but the old timer seems to be still there.)
    The way we cancel the timer is as follows:
    Collection timers = ctx.getTimerService().getTimers();
    Collection<Timer> list = timers;
    Iterator<Timer> it = list.iterator();
    while(it.hasNext){
    timer = it.next();
    timer.cancel();
    }

    More information from my findings. If you print the timers to logs, you'll see that the states are different.
    [EJB Timer] id: 146 pk: 1 info: null timer: 1317710283134.17107(60000) state: 2 ejb: PropertyFileRefreshBean(Application: FCM, EJBComponent: FCM_EJB.jar) Thread: Thread[[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]
    I see state 2 when it is running. And when I perform timer.cancel(), depending on whether it is a transaction or not, it will set the state to 6 or 7. A state 7 will have the timer removed from the sessionContext immediately (I've checked this in the weblogic.jar TimerImpl source). However a state 6 will only mean that the timer has been canceled, but it remains in the session context.
    The problem with my code is that I am checking if getTimer.isEmpty(), which unfortunately, it is not because it is in state 6.
    I'm not sure why doing timer.cancel in 2 different weblogic env (version 9.2 and version 10.3) can result in different states. But I have soon traced the problem to the weblogic-ejb-jar.xml descriptor file. Previously, I was running on a version 8.1 descriptor file. I have then used the DDConvertor tool in in weblogic 10.3 to convert it to the latest. And for some reasons, the timer's behaviour started acting differently.
    What is strange is that, apart from the descriptor header, everything else in the descriptor remains the same. None of the tags, attributes, etc has additional or lesser information. They are totally identical. But the output from the timer was different.
    I hope this helps. Anyone care to shed some light on what I have done wrong?

  • Can anyone explain the odd behaviour of the CVI Operator Interface?

    This is probably really related to CVI in general, but I think people should be aware of this behaviour. If tracing is enabled and a program executing, moving the mouse cursor over the Menu bar area of the Operator Interface program increases the execution of the test program dramatically. Anywhere else slows it down! Could this have any effect during critical test runs? Is there a way to force the fast execution. (i.e. to disable whatever message processing is going on when the mouse cursor is over the rest of the window?)

    Brian,
    You did not mention what is the CVI operator interface that you are using. In the Simple CVI OI, which is located at \Examples\OperatorInterfaces, the behavior you mentioned may occur.
    It is mainly because it uses a CVI timer to poll UIMessages, and the Timer Control runs in the same thread as the User Interface (CVI Panels). Because they both run in the same thread, when you move your mouse Windows handles the mouse move and repaint any window if necessary. While doing this, it stops all the other tasks that is running in the same thread, which means, the timer stops to tick and UIMessages are not handled for some time. In addition, the TestStand Engine executes synchronously with UIMessage handling, so if msg
    s are not handled the Engine pauses the execution.
    Finally, there is an example that ships with CVI under
    \Samples\Toolbox\AsyncDem.prj that shows how to use asynchronous timers. In other words, a timer that runs in a different thread different than User Interface. I also modified the Simple CVI OI to use this asynchronous timer, check the attached zip file.
    Regards,
    Roberto P.
    Applications Engineer
    National Instruments
    www.ni.com/support
    Attachments:
    Simple_CVIAsync.zip ‏176 KB

  • Cannot get timers because the EJBTimerManager is not available yet.

    WLS 12.1.3 installation on Win Server 2012.
    One cluster of two managed servers.
    A web application has a ServletContextListener, used to create some EJB timers as soon as it gets deployed. The timers are clustered (their state is persisted in an Oracle DB).
    When I restart the managed servers, I get the following exception:
    2015-03-17 16:39:20,396 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] ERROR - [clusterServer_1] java.lang.IllegalStateException: Cannot get timers because the EJBTimerManager is not available yet.
         at weblogic.ejb.container.timer.ClusteredEJBTimerManager.getTimers(ClusteredEJBTimerManager.java:114)
         at weblogic.ejb.container.timer.ClusteredEJBTimerManager.getTimers(ClusteredEJBTimerManager.java:109)
         at weblogic.ejb.container.internal.TimerServiceImpl.getTimers(TimerServiceImpl.java:187)
    If I undeploy and redeploy the web application without restarting the server, the exception is not raised and the timers are created.
    I tried to assign the web application a higher distribution order, to let it start after all the others have been started, but no way.
    Any suggestion ?
    Thanks

    Some viruses cause this behaviour.
    usually they change registry path to userinit.exe, winlogon.exe  and logonui.exe and change these filies.
    Seems like you'll have to clean this by antivirus tools.
    For now try booting in safe mode and entering Administrator account with blank password.
    Also try pressing twice Ctrl+Alt+Del on logon screen and use logon name Administrator and blank password.
    //help will save the world

  • Function of health probe timers on CSM

    Hi,
    we use the following configuration on a csm to monitor a server farm and I'm wondering how exactly the probe timers work.
    ===
    serverfarm sf
    nat server
    nat client natpool1
    failaction purge
    real name serv1
    weight 1
    inservice
    real name serv2
    weight 1
    inservice
    probe probe1
    probe probe1 script
    script LDAP_PROBE
    interval 5
    retries 2
    receive 1
    port 389
    ===
    So in my eyes the probes are sent every 5 seconds. When a probe isn't answered within one second it's marked as failed. If two probes are failed (retries 2) the real server is marked as down.
    Is this correct?
    In a network trace I see a different behaviour: Probes are sent every 5 seconds. If a real server goes out-of-service I see a probe which is not answered and the next probe is sent after 10 seconds (I expected 5 seconds). 5 seconds later the real server is marked down in the switch log.
    It would be fine if anybody could help me.
    Best Regards,
    Thorsten Steffen

    Hi,
    following the meaning of the parameters:
    Router(config-slb-probe)#
    interval seconds
    Sets the interval between probes in seconds (from the end of the previous probe to the beginning of the next probe) when the server is healthy.
    Range = 2-65535 seconds
    Default = 120 seconds
    Router(config-slb-probe)#
    retries retry-count
    Sets the number of failed probes that are allowed before marking the server as failed.
    Range = 0-65535
    Default = 3
    Router(config-slb-probe)#
    failed failed-interval
    Sets the time between health checks when the server has been marked as failed. The time is in seconds.
    Range = 2-65535
    Default = 300 seconds
    Router(config-slb-probe)# open
    open-timeout
    Sets the maximum time to wait for a TCP connection. This command is not used for any non-TCP health checks (ICMP or DNS1).
    Range = 1-65535
    Default = 10 seconds
    There are two different timeout values: open and receive. The open timeout specifies how many seconds to wait for the connection to open (that is, how many seconds to wait for SYN ACK after sending SYN). The receive timeout specifies how many seconds to wait for data to be received (that is, how many seconds to wait for an HTTP reply after sending a GET/HHEAD request). Because TCP probes close as soon as they open without sending any data, the receive timeout is not used.
    When sniffing, you should see a probe each 5 seconds. When a probe fails for the first time, a second probe should be send after 5 seconds. when this probe fails too, the server is put out of service.
    That should be the behaviour you should see.
    HTH,
    Dario

  • Different query behaviour (index or no index use) between sql and pl/sql

    Hi All,
    I have a query inside a cursor in a procedure, let's say:
    cursor c_emp (b_dept_no in number)
    is
    select *
    from emp
    where dept_no = b_dep_no;
    There is an non unique index on dept_no.
    In this procedure i first loop through another cursor which gets the dept_no and with this dept_no i go into a for loop for the c_emp cursor.
    When i run this procedure i see that the explain plan of above query gives me a Full table Scan on EMP, eventhough there is a index on dept_no and there are 1.3 million records in the em table. When i take the above query and explain it seperately, it uses the index on dept_no.
    I have rebuild/analyzed the tables and indexes, nothing seems to work. Even hints in the procedure cursor are not helping at all.
    I'm using Oracle Database 10.2.0.1.0 and have never seen such behaviour before.
    Anyone an idea what is going on here?
    Kind regards,
    Dave

    Hoi Rob,
    it's like i have three tables. The first i have to get data from for my output, then for every record of table one there are one or more records in table 2 and table 3.
    I had to create a xml file and it looks like this:
    <Table1 Record 1>
    <Name>...</Name>
    etc...
    <Table2 Record 1>
    </Table2 Record 1>
    <Table2 Record 2>
    </Table2 Record 2>
    <Table3 Record 1>
    </Table3 Record 1>
    <Table3 Record 2>
    </Table3 Record 2>
    <Table1 Record 2>
    etc.etc.etc.
    So that's why i programmed:
    for r_1 in c_table1 loop
    for r_2 in c_table2(r_1.dept_no) loop
    end loop;
    for r_3 in c_table3(r_1.dept_no) loop
    end loop;
    end loop;
    And when i look at the first record,
    it has 2 records in table2 en 16 records in table3. So nothing huge.
    For now i'm unable to trace the session. I will try to post the tkprof later.
    Kind regards,
    Dave

  • Has there been updates to transcription support in a PS 4 Windows Update? Behaviour has changed...

    I utilise PowerShell transcription support heavily in my PS scripts. Essentially I utilise transcription as a replacement to having a logging framework - all logging is performed via Write-Host, Write-Verbose and Write-Debug calls, and then logged to file
    via a call to Start-Transcript at the start of script execution.
    Transcription support in PS versions prior to 5 is limited in that it is hard coded in the Start-Transcript and Stop-Transcript commands to throw an exception if the host is not an instance of Microsoft.PowerShell.ConsoleHost. Also, to make it even more difficult,
    Stop-Transcript throws an error when there is no active transcript; but there is no way to detect if there is. Therefore, I use reflection to get the ConsoleHost.IsTranscribing internal property value to determine whether to call Stop-Transcript at script
    completion. This logic has worked fine for PS versions 2, 3 and 4. However, more recently I believe a Windows Update patch has changed the way the transcription works. It appears that PS 4 now supports transcription functionality that I thought was PS 5 (CTP)
    specific - nested transcription sessions (i.e. you can now continually call Start-Transcript and it will create more sessions, rather than throw an error when there is an active session).  Also, the internals of how transcription is managed must have
    changed because the IsTranscribing property no longer returns the correct value. I am unsure if there is now a "supported" way of checking for this rather than hacking into the internals of the host. This change results in my script creating multiple
    transcription sessions as it does not know there is already transcription started.
    Does anyone know if there has been any updates in PS 4 for the transcription functionality? Or any other details regarding this?
    Cheers

    Hi Anna,
    Thanks for the response. Can you make sense of the info below? Transcription appears completely broken
    on the build on my machine, which I have not installed any PS CTP on. I am worried a hotfix such as KB3000850 which has also caused me the grief here:
    https://social.technet.microsoft.com/Forums/windowsserver/en-US/eaa4a532-5ff5-4a2f-89ce-7e72c71a8fb7/powershell-30-stuck-in-infinite-loop-resolving-members-internally-is-this-a-ps-bug?forum=winserverpowershell
    https://connect.microsoft.com/PowerShell/feedback/details/1045858/add-member-cmdlet-invokes-scriptproperty-members-when-adding-new-member
    ...has been installed via Windows Update. I am running Windows 8.1 and all latest updates applied as at 23 April.
    My $PSVersionTable is the same as yours except for "BuildVersion" 6.3.9600.17400. I can also call Start-Transcript continually and it will keep creating sessions. Once I do this all sessions receive data once I
    enter more commands in the console (i.e. each file is getting the same data). This is the behaviour I would have expected in PS 5 with the transcription updates, but not in a PS 4 update.
    NOTE: In addition to this, the data being fed into the transcription file is NOT the same format as the standard transcription format. The transcription file contains different data and
    is not a true reflection of what is on the console). The following data is being output to the transcription file after each command:
    CurrentMatchIndex              ReplacementIndex             ReplacementLength CompletionMatches
                               -1                            
    0                             8 {System.Management.Automat...
    In addition to that (I haven't had a chance to look into this in detail), but the log files that are being generated by the PS module I have written are now containing a heap of contents that appear to be generated each time an exception
    is thrown (even if it has been caught?)
    "PS>TerminatingError(Invoke-Expression): xxxxxxx" and
    "PS>TerminatingError(): "The pipeline has been stopped.""
    messages, but no host, verbose, or debug data (i.e. terminating error details only, which I have never seen in the transcript file before). That's correct -
    the transcription file doesn't contain any of the data it used to, just error info that did not used to be in there!!
    Please assist urgently, this is a critical issue for me.

  • APEX Application behaviour in a RAC setup

    Hi
    Caveat first: I'm pretty new to Oracle RAC and just looking into it as an option. We have an APEX application currently running in Oracle 11gR2 single node currently and are considering HA for this.
    My question is: What would be the expected behaviour seen by a User of an APEX application, in the event of a node failure, when running with an OHS / RAC configuration? Will they get "transparent fail-over" and see nothing or will they see an error?
    I appreciate I could post in the APEX forum, but feel that is probably more of a development forum and possibly someone here has had to look at things at this level.
    I have read what I think may be the definitive reference for this:
    http://www.oracle.com/technetwork/developer-tools/apex/learnmore/apex-rac-wp-133532.pdf
    but while it covers most of what I want I don't believe I have found an answer to my question
    This states:
    "The Transparent Application Failover (TAF) feature of Oracle Net Services is a runtime failover for high-availability environments. It enables client applications to automatically reconnect to the database if the connection fails and, optionally, resume a SELECT statement that was in progress. The reconnection happens automatically from within the Oracle Call Interface (OCI) library. For applications that do insert, update or delete transactions, the application must trap the error when the failure occurs, rollback the transaction, and then resubmit. If the application is not written to be TAF aware, the session will get disconnected."
    However (as I understand it) APEX runs in the database and would fail with the database, it isn't a typical "client application" connecting to Oracle via a TAF aware connection pool - it is essentially a large pl/sql package and TAF only covers SELECT statements not packages.
    May be I'm over-reading this and it's simpler than that: APEX/Mod_plsql might just handle it?
    - APEX User/HTTP session state is stored in database APEX: Understanding session state which is available on other nodes
    - Mod_plsql in OHS can detect the error returning and reissues the request to good server and APEX on that instance can retrieve Users/HTTP state and process the request (APEX/RAC doc states mod_plsql can see an error from database and cleanup connection up and form a new connection, but not that it will retry the request for the client into other APEX/DB node).
    I'm really just after a (transparent/non-transparent) statement based on experience, but an outline of how the components behave would be useful.
    Thanks in advance
    Dave

    Hi
    Any chance of getting that link outside of Metalink? - I'm trying to get our customer support id, but no luck at present.
    I'm aware that APEX can run with RAC (as per the link I posted) - I'm really after next level info around behaviour in that environment.
    Thanks
    Dave

  • HT4864 When trying to update my Mail Account Mailbox Behaviours settings, when I try to close the settings pane the following messages occur: Invalid Incoming Mail Server The "Incoming Mail Server" field cannot be empty. The incoming mail server box has p

    When trying to update my Mail Account Mailbox Behaviours settings, after making the changes when I try to close the settings pane the following messages occur: Invalid Incoming Mail Server The “Incoming Mail Server” field cannot be empty. The incoming mail server box has in light grey colour: p02-imap.mail.me.com in it and I cannot edit its content. Any ideas what is going on and how to fix it?

    Hi all,
    Mattreichenbach is probably on the right track here with a reset of settings.  I think I've determined the issue has to do with cached account information and inconsistencies for the account name.  This seems to crop up when I've changed my password and it hasn't propagated fully to all the servers, devices, certificates, etc.
    Hopefully many here are on their way to restoration of service by now but it's clear that a lot of people are having the same issues.  Very frustrating and definitely something Apple needs to resolve:  incoming mail server field grayed out, incorrect autopopulation of different fields, other unanticipated behaviors.  If you're still having issues, though, here's what worked for me...
    First, head to the iCloud preferences pane in System Configuration and choose "Sign Out".  When I did this it prompted me with a number of "are you sure" type questions about retaining information on my local machine.  I chose to delete/remove the info each time simply because it should all be restored by the cloud and I didn't want to risk a massive duplication of my data... I will say, I'm back up and running with no issues so I suspect you can make the same delete/remove choices...  But use your own judgment.  I don't want you to lose any data (ie.. please use care as you do this because I cannot bear the thought of causing anyone to experience the pain of data loss).
    Once you've signed out of iCloud, restart your system.  When you get back in, head to the Mail, Contacts and Calendars section of your System Preferences and add your account back by choosing the brushed aluminum "iCloud" button.  When it asks for your account name, use your @iCloud.com email address.  I am all but certain my issue had started because one of my devices (iPhone or whatever) had been set up with an email alias specified instead of my @iCloud.com address.
    Apple, if you're reading through any of these issues (there are TONS of users having this same problem).  Take note, that your icloud service somewhat frequently is not responding and yet tells the user that the password is wrong and this prompts people to be changing their passwords unnecessarily.  This has happened to me on numerous occasions.  Also, I noticed that last week's outage corresponded to a VERY similar outage exactly one year ago to the day.  Sounds like planned maintenance to me and I think you could do a better job notifying folks so we're not wasting HUGE amounts of time troubleshooting a problem that we have no hope of fixing.
    Hope that helps some of you!
    Terry Mullane
    Washington, DC

  • Behaviour of Microsoft Transporter Suite (Notes migration to Exchange 2007)

    Dear Sir, 
         I have a question about configuraiton of Microsoft transporter, not sure whether it is a behaviour or it can be fixed.
    Question 1:
    Lotus Notes 7.04 --> Exchange 2007
    Microsft Transport: Scheduler set to every 15 min.
    Q1. Does it mean that Notes sync to AD User account setting only in every 15 min only ?
    Q2. It seems that it will not sync Notes email mailbox message with Exchange mailbox until manual press
        'Migrate selected mailbox', may I confirm that is it a design behaviour.
    Q3. After created free/busy connector (Every 60 minutes of sync), it seems that it will not sync
          user calendar until manual pressed 'Synchronize Now'.
    Q4. Can Mirocosft transport suit support workstation NSF file to PST file ?
    Q5. In notes environment, ACL will be used to configure boss/secretary condition which allow send as permission.
        Does it mean that all permission will be reconfigured manually? Or any Microsoft tools to work on it.
    Regards,
    Joe

    Hello Joe,
    I checked with a specialist regarding your questions and here are the responses.
    I hope this helps!
    Q1. Does it mean that Notes sync to AD User account setting only in every 15 min only ?
    If this is referring to Direcctory Synchoronization, then yes, it will synch any updates every 15 minutes. However, there is no reason to do a dirsync that often.
    Q2. It seems that it will not sync Notes email mailbox message with Exchange mailbox until manual press
        'Migrate selected mailbox', may I confirm that is it a design behaviour.
    This one seems to refer to migration. If you are wanting to migrate the mailboxes and email, you would have to manually migrate each user. In other words, this is not an automated process. So yes, this is by design
    Q3. After created free/busy connector (Every 60 minutes of sync), it seems that it will not sync
     user calendar until manual pressed 'Synchronize Now'.
    A dirsync will have to be run after the Free/Busy Connector is created. However, it should only have to be run once. After that, when a user requests new calendar information, it will pull information for that user
    Q4. Can Mirocosft transport suite support workstation NSF file to PST file ?
    Yes, you will have to use the EMS to do this. It's not possible via the GUI.
    Q5. In notes environment, ACL will be used to configure boss/secretary condition which allow send as permission.
        Does it mean that all permission will be reconfigured manually? Or any Microsoft tools to work on it.
    There is not an automated way of doing this.
    Kevin Ca - MSFT

  • APEX Listener and EPG - strange behaviour

    Hi
    For some years, I've used EPG for APEX but have struggled with performance particularly as I can have up to 150 student developers using at any one time.
    I do a fair amount of work using ORDImage and have successfully developed APEX applications to upload image files and display full-size and thumbnail images.
    After upgrading to APEX 4.1 (from 4.0), I decided to install APEX Listener standalone.
    Before I did so I checked that my applications still worked in 4.1 and they did.
    However, just installing APEX Listener but not configuring it (yet) has meant that my image display in a report using a procedure based on wpg_docload.download_file( l_ordimage_image.source.localData ) no longer works in EPG - the images are not displayed.
    Configuring APEX Listener and running the same application through that DOES display the images.
    So this part of the application works under APEX Listener but not under EPG.
    My application also allows users to upload images from APEX_APPLICATION_FILES using standard code. Under APEX Listener after uploading, I'm left with a blank page with a wwv_flow.accept URL although the image does indeed upload. Under EPG it works as expected and I get a success confirmation.
    So this part of the application works under EPG but not under APEX Listener.
    Has anyone else come across different behaviour depending on the mode of connection?
    Thanks
    Brian
    [Oracle EE 11gR2, Windows Server 2008R2, APEX 4.1, APEX Listener 1.1.3]

    Hi Brian,
    it sounds like you have both EPG and APEX Listener running on the same machine, so your problem might result from a port conflict. Note that both services use TCP port 8080 as default.
    At least a port conflict would explain the strange behaviour in your case, some things working on one web server and some on the other.
    Some parts of your initial post hint to that direction, e.g.
    However, just installing APEX Listener but not configuring it (yet) has meant that my image display in a report using a procedure based on >wpg_docload.download_file( l_ordimage_image.source.localData ) no longer works in EPG - the images are not displayed.... because the APEX Listener only interfere with the EPG if it is at least running on the same machine as your database and furthermore, if it is unconfigured in terms of ist database connection, a port conflict might be the only way it could cause anything like that.
    However, if you are sure that's not the issue, please check if you see any error in the APEX Listener's log for the following action you performed:
    My application also allows users to upload images from APEX_APPLICATION_FILES using standard code. Under APEX Listener after uploading, I'm left with a blank >page with a wwv_flow.accept URL although the image does indeed uploadIf you actually see just a blank screen, something very bad must have happened and you should see some kind of stack trace there.
    For further investigations, if necessary, it would be helpful to know how you deployed or started your APEX Listener and which JDK version you use.
    For the moment, I still think the port conflict is my best guess.
    You could avoid it by either changing the port for EPG (I'd not recommend that if you have other users still using it) or by changing the port for your APEX Listener.
    -Udo

  • Problem with timers in a udp state pattern

    Hi.
    As a project on my school, i have created a bomberman game, that supports up to 4 players on a network. And it works fine, when there is no network timers involved, that means no packet loss handling.
    The network part of the game, is build up by UDP, to make the application support multicast. The game session flow, is build up by states which are designed like an extended 2 phase commit pattern.
    That means, the server sends Gameinfo to the clients. Then all the cliens replies with an ACK.
    The server then sends ExecuteGameinfo. Then the clients replies with an ACK.
    The server sends/requests playerinfo, and the clients reply with player info. (the server uses the player info to create gameinfo).
    These 3 states, continues to go on, as long as the game is running. And without timers, it is working great.
    But what if a packet is lost? (on a LAN, packetloss is very rare, but for the sake of my project�s issue, custom made reliability in UDP, I have to face the problem). Then the server would just hang, and wait for the client reply.
    To avoid that, i want to use a timer. If the server havent got any reply for like a 100 ms., the server should resend the package.
    And now to the actual problem :)
    Ive tried using java.util.Timer, and javax.swing.Timer. But both timers does not work in my case. Its like:
    Server starts timer.
    Server sends Gameinfo.
    100 ms passes.
    Server resends Gameinfo.
    Server restarts timer.
    100 ms passes.
    (this goes on for 5 times, and then the client is kicked)
    Server receives ACK.
    Server receives ACK.
    Server receives ACK.
    Server receives ACK.
    Server receives ACK.
    On the client side it looks like this:
    Recieves Gameinfo, replies with ACK
    Recieves Gameinfo, replies with ACK
    x 5
    So its like the server is to concentrated on that timer (even though it runs as a thread), so i doesent notice the incoming packets, that eventually stacks up, and is handled after the timer tasks are done.
    And this is exactly the problem that is described in the Timer api: " Timer tasks should complete quickly. If a timer task takes excessive time to complete, it "hogs" the timer's task execution thread. This can, in turn, delay the execution of subsequent tasks, which may "bunch up" and execute in rapid succession when (and if) the offending task finally completes."
    Ive tried using a homemade timer, with a Thread.sleep(), it is a bit better, but the problem is the same. 1 out of 20 incoming packets, is "ignored" by the server.
    I really hope any of you can help.
    I havent included any code, it would be to much code. But if you are interested in looking at something i can easily paste it.
    Thank you very much for your time :)
    Regards.

    Don't use a Timer, use DatagramSocket.setSoTimeout(). Then your receives will only block for that amount of time, throwing SocketTimeoutException if no datagram arrives.

  • External display flashes and shows 'snow'. (Video of behaviour included)

    Since yesterday, my Macbook Pro is acting strange. When I connect it to an external monitor, it usually works. Everything goes well for 10 to 30 minutes, and at some point the display starts tearing, showing snow, and flashing. These flashes get worse and worse, up till the point where I have to reboot. Rebooting seems to help a little. Whenever the laptop hasn't been used for a few minutes it works correctly again, for a short while. (This makes me conclude it's some sort of heat-related issue)
    The issue is present on multiple monitors using different DVI cables. I only have one mini-displayport to dvi adapter, so the problem could be there too.
    This problem does not affect the internal display of the macbook in any way.
    Here is a short video showing the behaviour:
    http://www.youtube.com/watch?v=4BotUqHb3dM
    What should I do? Try to figure out wether it's the mbp or the connector or just bring it in for a repair. (It's less than a year old)

    I have had similar issues with my 15" MBP. Occasionally my external monitor will go 1980s and display what looks like crappy tv reception.
    Also, connecting or disconnecting an external display (via the single link mini display port to dvi adapter) has a tendency to lock up the entire machine (both displays black, won't respond to keyboard or mouse) until the power is cycled.
    Also, my built in monitor has a habit of flickering/glitching lines.
    These problems seem to happen regardless of which graphics card is active.

Maybe you are looking for

  • Sale order doesn;t exist issue in APO

    Hi , I am facing issue while trying ot create outbound delivery from sale order. But during delivery creation , BAPI_OUTB_DELIVERY_CREATE_SLS , bapi throws error as " SALE order xxxxxxxxx doesn't exist in APO , Only 0 EA of material is available..."

  • How to get datatype and label of columns in a record group

    Hi all, I need to create a generic block which displays data of any query. For this, I was thinking at runtime I'll create a recordgroup. For this I was hoping to get the datatypes and label of various columns in the records. Please help me in this r

  • Recording with Garageband for IOS

    I wanted to share a recording or two using the ipad so that people could see that garageband for IOS doesn't suck.  I didn't spend too much time throwing them together, but at the same time they're not too horrible either. They give a pretty decent i

  • Web Report - Variable window question

    Hi Experts, I am using the same web-template for a lot of reports. But when I switch between the query views for some of the reports, the variable window is popping up...and for some it isin't.Why is this happening? Should I be changing some prpertie

  • Email attachment NOT OPENING

    cannot open an attachmnet....xls, .doc., .pdf using enterprise any ideas..I click on the attachment but it just sits there at 0% download