Author: fschumacher Date: Mon Feb 12 18:58:24 2018 New Revision: 1824054 URL: http://svn.apache.org/viewvc?rev=1824054&view=rev Log: Update JTable in Aggregate Report only when new data has arrived.
That way selections of rows will be kept longer around. Bugzilla Id: 62097 Modified: jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatVisualizer.java jmeter/trunk/xdocs/changes.xml Modified: jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatVisualizer.java URL: http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatVisualizer.java?rev=1824054&r1=1824053&r2=1824054&view=diff ============================================================================== --- jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatVisualizer.java (original) +++ jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatVisualizer.java Mon Feb 12 18:58:24 2018 @@ -90,6 +90,8 @@ public class StatVisualizer extends Abst private Deque<SamplingStatCalculator> newRows = new ConcurrentLinkedDeque<>(); + private volatile boolean dataChanged; + public StatVisualizer() { super(); model = StatGraphVisualizer.createObjectTableModel(); @@ -131,6 +133,7 @@ public class StatVisualizer extends Abst synchronized(lock) { tot.addSample(res); } + dataChanged = true; } /** @@ -179,6 +182,10 @@ public class StatVisualizer extends Abst this.add(opts,BorderLayout.SOUTH); new Timer(REFRESH_PERIOD, e -> { + if (!dataChanged) { + return; + } + dataChanged = false; synchronized (lock) { while (!newRows.isEmpty()) { model.insertRow(newRows.pop(), model.getRowCount() - 1); Modified: jmeter/trunk/xdocs/changes.xml URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1824054&r1=1824053&r2=1824054&view=diff ============================================================================== --- jmeter/trunk/xdocs/changes.xml [utf-8] (original) +++ jmeter/trunk/xdocs/changes.xml [utf-8] Mon Feb 12 18:58:24 2018 @@ -142,6 +142,7 @@ Summary <h3>Listeners</h3> <ul> + <li><bug>62097</bug>Update JTable in Aggregate Report only when new data has arrived. That way selections of rows will be kept longer around.</li> </ul> <h3>Timers, Assertions, Config, Pre- & Post-Processors</h3>