Ticker disconnected and error during reconnect


  • We get the below exception first, in the middle of our algo execution.

    SmartAPIException [message=ticker is not connected, code=504]
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.subscribe(SmartStreamTicker.java:319)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.lambda$reconnectAndResubscribe$0(SmartStreamTicker.java:261)
    at java.base/java.util.Map.forEach(Map.java:713)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.reconnectAndResubscribe(SmartStreamTicker.java:260)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.access$400(SmartStreamTicker.java:29)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker$2.run(SmartStreamTicker.java:239)
    at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
    at java.base/java.util.TimerThread.run(Timer.java:516)

    And later we see the below exception continuously

    com.neovisionaries.ws.client.OpeningHandshakeException: The status code of the opening handshake response is not '101 Switching Protocols'. The status line is: HTTP/1.1 429 Too Many Requests
    at com.neovisionaries.ws.client.HandshakeReader.validateStatusLine(HandshakeReader.java:232)
    at com.neovisionaries.ws.client.HandshakeReader.readHandshake(HandshakeReader.java:54)
    at com.neovisionaries.ws.client.WebSocket.readHandshake(WebSocket.java:3244)
    at com.neovisionaries.ws.client.WebSocket.shakeHands(WebSocket.java:3123)
    at com.neovisionaries.ws.client.WebSocket.connect(WebSocket.java:2155)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.connect(SmartStreamTicker.java:383)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.reconnectAndResubscribe(SmartStreamTicker.java:258)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.access$400(SmartStreamTicker.java:29)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker$2.run(SmartStreamTicker.java:239)
    at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
    at java.base/java.util.TimerThread.run(Timer.java:516)

    Can you please let me know what is the problem?


  • @anand-n04 The status line is: HTTP/1.1 429 Too Many Requests.

    One client is only allowed to create 3 connections only.