This class is populated by FlowController, which will record throttling events. Currently it
only keeps the last flow control event, but it could be expanded to record more information in
the future. The events can be used to dynamically adjust concurrency in the client. For example:
// Increase flow control limits if there was throttling in the past 5 minutes and throttled time// was longer than 1 minute.while(true){FlowControlEventevent=flowControlEventStats.getLastFlowControlEvent();if(event!=null && event.getTimestampMs() > System.currentMillis()-TimeUnit.MINUTES.toMillis(5) && event.getThrottledTimeInMs() > TimeUnit.MINUTES.toMillis(1)){flowController.increaseThresholds(elementSteps,byteSteps);}Thread.sleep(TimeUnit.MINUTE.toMillis(10));}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-15 UTC."],[[["\u003cp\u003eThe latest version available is 2.63.1, with a comprehensive list of previous versions down to 2.7.1.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eFlowControlEventStats\u003c/code\u003e is a class used to track the statistics of flow control events, particularly throttling events.\u003c/p\u003e\n"],["\u003cp\u003eThe class \u003ccode\u003eFlowControlEventStats\u003c/code\u003e records flow control events, allowing for dynamic adjustment of concurrency in clients, and it extends \u003ccode\u003ejava.lang.Object\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eFlowControlEventStats\u003c/code\u003e class provides a method called \u003ccode\u003egetLastFlowControlEvent()\u003c/code\u003e, which retrieves the latest recorded flow control event.\u003c/p\u003e\n"],["\u003cp\u003eThe information is used to dynamically adjust the concurrency in the client, by getting the most recent flow control event and looking into its parameters to proceed to an increase in the flow control limits.\u003c/p\u003e\n"]]],[],null,[]]