Details
-
Bug
-
Status: Resolved
-
Resolution: Won't Do
-
None
-
None
-
None
-
Operating System: All
Platform: All
-
4777
Description
Start testtool using this command:
java -Xmx1G -XX:MaxPermSize=256M -jar netconf-testtool-1.0.0-20151201.153854-78-executable.jar --device-count 100 --debug true
The command essentially says that the devices have a dumb config store without fancy features like transaction processing. Thus they shall start extremely quickly (as quickly as the OS can create the sockets and threads for them).
Yet it is not the case. After I updated the scaling suite to initialize the testtool devices in a separate test case and added reporting that measured the time taken for these devices to become online, I discovered that on Sandbox each device needs 2 seconds and on my notebook with Manjaro from November 2014 the devices need anywhere from 2 seconds up to 30 seconds to start.
I included a few log fragments (from testtool start to the point of time where all of the devices are "started successfully") from these test runs on my notebook showing the anomalous behavior. These logs tell me that the problem is somewhere after "Initiated server XXX at YYY" and before "Creating Nio2Acceptor".
I tried to dig around in the Java code, trying to figure out the reason for this behavior but I got lost at "NetconfDeviceSimulator.java", lines 174 and 195; the trace of the bug ends at a strange type called "ChannelFuture" which does not have a ChannelFuture.java file and thus is impossible to find without a working Java debugger.