Forum Discussion
Tim_Patton_1891
Sep 13, 2016Nimbostratus
Hi Joe, Both Janeka and I work for the same company. We are still seeing this problem when we attempt to gracefully disable a pool member. Please let me know if you need any additional information. Thank you!
=====From our log file: ... Current Connections: 4 Current Connections: 4 Current Connections: 4 AxisFault faultCode: {http://xml.apache.org/axis/}HTTP faultSubcode: faultString: (0)null faultActor: faultNode: faultDetail: {}:return code: 0
{http://xml.apache.org/axis/}HttpErrorCode:0
(0)null
at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:744)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:144)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at iControl.LocalLBPoolMemberBindingStub.get_statistics(LocalLBPoolMemberBindingStub.java:1296)
at com.premier.controls.MemberStopStart.checkConnections(MemberStopStart.java:83)
at com.premier.controls.MemberStopStart.disablePoolMember(MemberStopStart.java:42)
at com.premier.controls.ControlMain.Run(ControlMain.java:40)
at com.premier.controls.ControlMain.main(ControlMain.java:18)
====Following is the code snippet where this problem occurs:
private boolean checkConnections() {
System.out.println("Waiting for current connections to drop to zero...");
CommonIPPortDefinition memberDef = new CommonIPPortDefinition();
memberDef.setAddress(memberAddress);
memberDef.setPort(Long.parseLong(memberPort));
CommonIPPortDefinition[] memberDefA = {memberDef};
CommonIPPortDefinition[][] memberDefAofA = {memberDefA};
long cur_connections = 1;
while (cur_connections > 0) {
LocalLBPoolMemberMemberStatistics[] memberStatsA = interfaces.getLocalLBPoolMember().get_statistics(poolArray, memberDefAofA);
LocalLBPoolMemberMemberStatistics memberStats = memberStatsA[0];
LocalLBPoolMemberMemberStatisticEntry[] statsEntryA = memberStats.getStatistics();
LocalLBPoolMemberMemberStatisticEntry statsEntry = statsEntryA[0];
CommonStatistic[] statsA = statsEntry.getStatistics();
for (int i = 0; i < statsA.length; i++) {
CommonStatisticType type = statsA[i].getType();
CommonULong64 value64 = statsA[i].getValue();
if (type == CommonStatisticType.STATISTIC_SERVER_SIDE_CURRENT_CONNECTIONS) {
cur_connections = value64.getLow();
System.out.println("Current Connections: " + cur_connections);
}
}
Thread.currentThread();
Thread.sleep(1000);
}
return true;
}