Start a new topic

710.1555 - Multiple monitors cause serious hanging.

[This topic is migrated from our old forums. The original author name has been removed]
[Attachment has been removed.]

Hi, I have a rather bizarre multiple monitor setup with the leftmost two monitors on a dual head card and a third monitor on a PCI graphics card. If I move DBVisualiser between the leftmost monitors all is well but if I move it to the third monitor then 99% of the time DBVisualiser freezes without anything in the debug log and has to have it's process manually killed. The freeze isn't instant as soon as the boundary is crossed - it takes about half a second usually. Similarly, on the odd occasion it doesn't freeze, it will then do so if I try to move it back to the leftmost two monitors. As DBVisualiser starts with the last recorded window geometry from when it was cleanly closed, this means the window is effectively trapped on that monitor even if the program is restarted. There is a kludgey workaround - using the ALT-SPACE menu and selecting MOVE, I can move the window over the monitor boundary then close the app with ALT-F4. The next time it's opened I can move it around again as long as I don't cross that monitor boundary. I attach an image to show the kind of crash - if you want me to provide any more detailed information or try it with more detailed debugging enabled, let me know what you need. My system is Windows XP Pro and this behaviour seems to occur even if no databases are opened. Nothing shows in the Event Viewer either.

[This reply is migrated from our old forums.]

Re: 710.1555 - Multiple monitors cause serious hanging.
Hi, We did a few fixes regarding dual monitor configurations a few versions back, 6.0 or so. The fix was for the situation when having DbVisualizer on an external monitor connected to for example a laptop, then exit DbVisualizer and disconnect the second monitor. When starting DbVisualizer on the laptop with the second monitor unattached DbVisualizer appeared in cyber on the second non connected monitor. The fix was simply to verify the screen boundaries and make sure it is moved to the primary monitor if out of bounds. Since that fix we have had no issues reported in this area. I will register your findings and look if there is a related bug report in Java that may explain or workaround the problem. Best Regards Roger
[This reply is migrated from our old forums.]

Re: 710.1555 - Multiple monitors cause serious hanging.
Hi, I think this seem to match your report quite well: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6656829 It is however on a very general level and no feedback is provided... Regards Roger
[This reply is migrated from our old forums. The original author name has been removed]

Re: 710.1555 - Multiple monitors cause serious hanging.
Yes, it does sound oddly similar. A clarification after more testing - this appears to affect the DBVisualiser main window only. I have tried the debug window and all other windows from the Tools menu and I can happily wave them around from monitor to monitor as much as I like.
[This reply is migrated from our old forums.]

Re: 710.1555 - Multiple monitors cause serious hanging.
Thanks for the update. What happen if you open a second main window using File->New Window and move that around? Regards Roger
[This reply is migrated from our old forums. The original author name has been removed]

Re: 710.1555 - Multiple monitors cause serious hanging.
That hangs the program as well.
[This reply is migrated from our old forums.]

Re: 710.1555 - Multiple monitors cause serious hanging.
Thanks. We will do a test see if we can reproduce it. Best Regards Roger
[This reply is migrated from our old forums. The original author name has been removed]

Re: 710.1555 - Multiple monitors cause serious hanging.
A few extra things that may help with reproducing it. (Below I assume my monitors are labelled 1 to 3 from left to right) It happens more often when I start DBVis in maximised (as I usually do) and then un-maximise it in order to drag the window. I use Ultramon in my multi-monitor setup in case that is causing interaction issues. Monitors 1 and 2 are on the same graphics card and I have noticed no problems moving between those two. Monitor 1 is rotated 90 degrees so it's screen resolution doesn't match that of monitors 2 and 3. The problem manifests itself not when the mouse pointer crosses the screen boundary but when more than 50% of the DBVis window crosses it. I can cause an actual crash as oposed to a system hang if I start the program maximised on monitor 2, un-maximise it and move it to monitor 3 then maximise it again on monitor 3. Error message from crash follows: ----------------------------------------------------------------------------- An internal error occurred: java.lang.IllegalStateException: Buffers have not been created The error may have affected the application state. Please notify vendor. Stack Trace: java.lang.IllegalStateException: Buffers have not been created at sun.awt.windows.WComponentPeer.getBackBuffer(Unknown Source) at java.awt.Component$FlipBufferStrategy.getBackBuffer(Unknown Source) at java.awt.Component$FlipBufferStrategy.updateInternalBuffers(Unknown Source) at java.awt.Component$FlipBufferStrategy.revalidate(Unknown Source) at java.awt.Component$FlipBufferStrategy.revalidate(Unknown Source) at java.awt.Component$FlipBufferStrategy.getDrawGraphics(Unknown Source) at javax.swing.BufferStrategyPaintManager.prepare(Unknown Source) at javax.swing.BufferStrategyPaintManager.paint(Unknown Source) at javax.swing.RepaintManager.paint(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at java.awt.GraphicsCallback$PaintCallback.run(Unknown Source) at sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source) at sun.awt.SunGraphicsCallback.runComponents(Unknown Source) at java.awt.Container.paint(Unknown Source) at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source) at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source) at javax.swing.RepaintManager.seqPaintDirtyRegions(Unknown Source) at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source) at java.awt.event.InvocationEvent.dispatch(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at com.onseven.dbvis.K.A.U.dispatchEvent(Z:2143) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)
[This reply is migrated from our old forums.]

Re: 710.1555 - Multiple monitors cause serious hanging.
Hi, Sorry for the delay. This is most probably related to Java in combination with OS and graphics cards. Hopefully Oracle will publish updates in the near future that fixes it. Meanwhile, take a look in the following forum post as my last suggestion may help: http://www.dbvis.com/forum/thread.jspa?messageID=11199 Best Regards Roger
[This reply is migrated from our old forums. The original author name has been removed]

Re: 710.1555 - Multiple monitors cause serious hanging.
Hi Roger, Many thanks for this. Just to confirm that adding the following to DBVIS-HOME\dbvis.vmoptions as suggested seems to fix the problem: -Dsun.java2d.d3d=false.