This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 63602 - RuntimeException: New x-value not greater than previous x-value
Summary: RuntimeException: New x-value not greater than previous x-value
Status: CLOSED FIXED
Alias: None
Product: profiler
Classification: Unclassified
Component: Base (show other bugs)
Version: 4.x
Hardware: PC Windows XP
: P3 blocker (vote)
Assignee: Jiri Sedlacek
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-09-03 12:10 UTC by mikejwatts
Modified: 2007-02-12 22:03 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description mikejwatts 2005-09-03 12:10:05 UTC
Running the profiler for a length of time ( about 8 hours ) and it started 
generating multiple exception messages as above until eventually the profiler 
stopped responding.

Example output in the messages.log file ( the whole file is about 5 MB ):
[org.netbeans.modules.profiler] *********** Exception occurred ************ at 
5:37 AM on Sep 3, 2005
java.lang.RuntimeException: New x-value not greater than previous x-value.
	at 
com.sun.tools.profiler.ui.monitor.VMTelemetryXYChartModel.processNewData
(VMTelemetryXYChartModel.java:111)
	at com.sun.tools.profiler.ui.monitor.VMTelemetryXYChartModel.dataChanged
(VMTelemetryXYChartModel.java:95)
	at com.sun.tools.profiler.results.DataManager.fireDataChanged
(DataManager.java:47)
	at 
com.sun.tools.profiler.results.monitor.VMTelemetryDataManager.addValuesInternal
(VMTelemetryDataManager.java:150)
	at 
com.sun.tools.profiler.results.monitor.VMTelemetryDataManager.processData
(VMTelemetryDataManager.java:72)
[catch] at org.netbeans.modules.profiler.ProfilingMonitor$UpdateThread$1.run
(ProfilingMonitor.java:93)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy
(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy
(EventDispatchThread.java:163)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Comment 1 Jiri Sedlacek 2005-09-05 10:37:51 UTC
The exception means that timestamp of data to display is smaller than previous 
timestamp, which can happen if time on the machine where profiled application 
runs was moved back.

Could this happen on your system? Or do you have another idea what could cause 
the time slip?
Comment 2 mikejwatts 2005-09-05 11:50:53 UTC
Well this is very curious.  It just so happens that the application being 
profiled outputs ( dummy ) data to a log file and the data is prefixed with a 
timestamp.  The exceptions started ta 5:37 and guess what - I see a stream of 
values [in the log file] at 5:37, then 5:38 and back to 5:37.  However the 
exceptions keep coming thick and fast timestamped from 5:37 until 6:51 when ( I 
would guess ) the profiler ran out of stack or similar, but there are no more 
incidents of time 'going back' although the log file resolution is only to a 
second.

It is possible the PC time was changed as it is set to update time from the 
internet _however_ looking at the PC now it says it is set to update at 23:50 
and also I often switch off my internet connection overnight ( just in case ;-
) ).  The reason why is not really going to be of interest to you.

I suppose you can either view this as a fault with the PC i.e. ignore 
my 'issue' or try to make it tolerant of such changes.
Comment 3 Jiri Sedlacek 2005-09-05 12:20:52 UTC
As time slip prooved to be possible to happen, the Profiler shouldn't generate 
exceptions but rather silently skip this fact and just log some warning.

Unfortunately, the implementation maybe won't be trivial, for graph displaying 
and scrolling the correct time synchronization is required.

Will do more investigation about it.
Comment 4 Jiri Sedlacek 2005-09-05 13:28:59 UTC
Created a fix, will be available in M9. If new timestamp is not greater than 
the last, a warning will be simply logged without throwing any exception.

Note that in this case the graphs likely won't be displayed/updated correctly. 
This won't be fixed as time slip is only a corner case.

Thanks for reporting this issue.
Comment 5 ehucka 2006-10-09 12:11:39 UTC
Verification of old issues.
Comment 6 Alexander Kouznetsov 2007-02-12 22:03:16 UTC
Closing old issues.