Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4953871

PointBase 4.6 problem: process spins while accessing a table

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P3 P3
    • None
    • solaris_9u6
    • core-libs
    • sparc
    • solaris

      With PointBase version 4.6
      driver major version=4
      driver minor version=6
      driver version=4.6 ECF build 240

      This problem is found while testing Message Queue 3.5 using PointBase as the persistent store. After the running our test, the MQ broker was being restarted.
      During startup while loading the persistent data from database, the broker just spin without ever returning from the PreparedStatement.executeQuery() method.
      3 thread dumps of the broker attached showing the process spinning in getting data. The databas exhibiting the problem is also attached.

      The same thing happens when pointbase's console is used to access the table.
      Thread dump of the console:
      Full thread dump Java HotSpot(TM) Client VM (1.4.2-b28 mixed mode):

      "DestroyJavaVM" prio=5 tid=0x0002ccf0 nid=0x1 waiting on condition [0..ffbfe508]

      "Thread-2" daemon prio=5 tid=0x000ea4b0 nid=0x11 runnable [f0aff000..f0affc30]
      at java.net.PlainSocketImpl.socketAccept(Native Method)
      at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:353)
      - locked <0xf205f850> (a java.net.PlainSocketImpl)
      at java.net.ServerSocket.implAccept(ServerSocket.java:448)
      at java.net.ServerSocket.accept(ServerSocket.java:419)
      at com.pointbase.cache.SystemLock.run(Unknown Source)
      at java.lang.Thread.run(Thread.java:534)

      "Thread-1" daemon prio=5 tid=0x000d9430 nid=0x10 in Object.wait() [f0bff000..f0bffc30]
      at java.lang.Object.wait(Native Method)
      - waiting on <0xf205f948> (a com.pointbase.cache.cacheWriter)
      at java.lang.Object.wait(Object.java:429)
      at com.pointbase.cache.cacheWriter.waitForWork(Unknown Source)
      - locked <0xf205f948> (a com.pointbase.cache.cacheWriter)
      at com.pointbase.cache.cacheWriter.run(Unknown Source)

      "Thread-0" daemon prio=5 tid=0x000ea270 nid=0xf in Object.wait() [f0fff000..f0fffc30]
      at java.lang.Object.wait(Native Method)
      - waiting on <0xf205f9a0> (a com.pointbase.wal.walWriter)
      at java.lang.Object.wait(Object.java:429)
      at com.pointbase.wal.walWriter.waitForWork(Unknown Source)
      - locked <0xf205f9a0> (a com.pointbase.wal.walWriter)
      at com.pointbase.wal.walWriter.run(Unknown Source)

      "TimerQueue" daemon prio=5 tid=0x002b9888 nid=0xe in Object.wait() [f0cff000..f0cffc30]
      at java.lang.Object.wait(Native Method)
      - waiting on <0xf202f928> (a javax.swing.TimerQueue)
      at javax.swing.TimerQueue.run(TimerQueue.java:231)
      - locked <0xf202f928> (a javax.swing.TimerQueue)
      at java.lang.Thread.run(Thread.java:534)

      "AWT-EventQueue-0" prio=6 tid=0x001b7ed0 nid=0xd runnable [f0dfe000..f0dffc30]
      at com.pointbase.set.setGroupByEnum.getNextElement(Unknown Source)
      at com.pointbase.set.setGroupByEnum.hasMoreElements(Unknown Source)
      at com.pointbase.qexp.qexpQueryBlockEnum.hasMoreElements(Unknown Source)
      at com.pointbase.set.setUnionEnum.hasMoreElements(Unknown Source)
      at com.pointbase.qexp.qexpQueryTopEnum.hasMoreElements(Unknown Source)
      at com.pointbase.select.selectCommand.fetch(Unknown Source)
      at com.pointbase.select.selectCommand.fetchRelativeRow(Unknown Source)
      at com.pointbase.api.apiStatement.fetchRelativeRow(Unknown Source)
      at com.pointbase.jdbc.jdbcResultSet.next(Unknown Source)
      - locked <0xf20d5448> (a com.pointbase.jdbc.jdbcResultSet)
      at com.pointbase.jdbc.jdbcTmpResultSet.populate(Unknown Source)
      at com.pointbase.jdbc.jdbcTmpResultSet.<init>(Unknown Source)
      at com.pointbase.tools.toolsResultSetDataModel.populateResultSet(Unknown Source)
      at com.pointbase.tools.toolsConsole.displayResultSet(Unknown Source)
      at com.pointbase.tools.toolsConsole.processDatabaseRequest(Unknown Source)
      at com.pointbase.tools.toolsConsole.processRequests(Unknown Source)
      at com.pointbase.tools.toolsConsole$16.run(Unknown Source)
      at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
      at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

      "Java2D Disposer" daemon prio=10 tid=0x001a1db8 nid=0xc in Object.wait() [f0eff000..f0effc30]
      at java.lang.Object.wait(Native Method)
      - waiting on <0xf1f77d20> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
      - locked <0xf1f77d20> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
      at sun.java2d.Disposer.run(Disposer.java:100)
      at java.lang.Thread.run(Thread.java:534)

      "AWT-Motif" daemon prio=6 tid=0x0019a788 nid=0xa runnable [f10ff000..f10ffc30]
      at sun.awt.motif.MToolkit.run(Native Method)
      at java.lang.Thread.run(Thread.java:534)

      "AWT-Shutdown" prio=5 tid=0x0019a4d8 nid=0x9 in Object.wait() [f11ff000..f11ffc30]
      at java.lang.Object.wait(Native Method)
      - waiting on <0xf1f77e38> (a java.lang.Object)
      at java.lang.Object.wait(Object.java:429)
      at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
      - locked <0xf1f77e38> (a java.lang.Object)
      at java.lang.Thread.run(Thread.java:534)

      "Signal Dispatcher" daemon prio=10 tid=0x000c2980 nid=0x6 waiting on condition [0..0]

      "Finalizer" daemon prio=8 tid=0x000bd868 nid=0x4 in Object.wait() [fc77f000..fc77fc30]
      at java.lang.Object.wait(Native Method)
      - waiting on <0xf1f77f38> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
      - locked <0xf1f77f38> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
      at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

      "Reference Handler" daemon prio=10 tid=0x000bcde8 nid=0x3 in Object.wait() [fe27f000..fe27fc30]
      at java.lang.Object.wait(Native Method)
      - waiting on <0xf1f77fa0> (a java.lang.ref.Reference$Lock)
      at java.lang.Object.wait(Object.java:429)
      at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
      - locked <0xf1f77fa0> (a java.lang.ref.Reference$Lock)

      "VM Thread" prio=5 tid=0x000bbfb8 nid=0x2 runnable

      "VM Periodic Task Thread" prio=10 tid=0x000c45d0 nid=0x8 runnable
      "Suspend Checker Thread" prio=10 tid=0x000c2018 nid=0x5 runnable

            duke J. Duke
            duke J. Duke
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: