db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adam Bovill" <abov...@fnfr.com>
Subject Embedded thread taking 100% cpu
Date Fri, 18 May 2007 22:12:51 GMT
Hello,

I seem to be having a problem with my embedded derby
"derby.rawStoreDeamon" thread where it takes up 100% of my CPU.
Everything else is still responsive, but this thread seems to be looping
through the following stack traces.  Also, as soon as I make any
additional action on the Database, it returns to normal, so it seems
that I have done something to get it into a strange state.

The following stack traces were taken by halting that thread multiple
times, they are not in any order.

So this happens after repeating the following multiple times:

 

1. Add items to two tables. (3 items into one, 15 into the other)

2. Set autocommit = false

3. force commit

4. attempt to delete all the items (and they are successfully deleted)

5. force commit

6. set autocommit = true

 

I set the autocommit to false so that I can roll back the changes if the
delete fails.

 

It seems to just sit there and spin doing nothing.  Have I done
something wrong with my commit logic?

 

Thanks,

Adam

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            LockControl.addLock(LockSet, Object, Object) line: not
available   

            LockSet.lockObject(Object, Lockable, Object, int, Latch)
line: not available            

            SinglePool.lockAnObject(Object, Object, Lockable, Object,
int, Latch) line: not available     

            SinglePool.lockObject(Object, Object, Lockable, Object, int)
line: not available       

            ContainerLocking3.lockContainer(Transaction,
ContainerHandle, boolean, boolean) line: not available            

            BaseContainerHandle.useContainer(boolean, boolean) line: not
available     

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int, boolean) line: not available   

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int) line: not available    

            InternalXact(Xact).openContainer(ContainerKey,
LockingPolicy, int) line: not available          

            OpenHeap(OpenConglomerate).init(ContainerHandle,
Conglomerate, int[], TransactionManager, Transaction, boolean, int, int,
LockingPolicy, DynamicCompiledOpenConglomInfo) line: not available  

            Heap.open(TransactionManager, Transaction, boolean, int,
int, LockingPolicy, StaticCompiledOpenConglomInfo,
DynamicCompiledOpenConglomInfo) line: not available      

            RAMTransaction.openConglomerate(Conglomerate, boolean, int,
int, int, StaticCompiledOpenConglomInfo, DynamicCompiledOpenConglomInfo)
line: not available      

            RAMTransaction.openConglomerate(long, boolean, int, int,
int) line: not available     

            B2I.lockTable(TransactionManager, int, int, int) line: not
available   

            BTreePostCommit.performWork(ContextManager) line: not
available           

            BasicDaemon.serviceClient(ServiceRecord) line: not available


            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     

 

 

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            OpenHeap(OpenConglomerate).init(ContainerHandle,
Conglomerate, int[], TransactionManager, Transaction, boolean, int, int,
LockingPolicy, DynamicCompiledOpenConglomInfo) line: not available  

            Heap.open(TransactionManager, Transaction, boolean, int,
int, LockingPolicy, StaticCompiledOpenConglomInfo,
DynamicCompiledOpenConglomInfo) line: not available      

            RAMTransaction.openConglomerate(Conglomerate, boolean, int,
int, int, StaticCompiledOpenConglomInfo, DynamicCompiledOpenConglomInfo)
line: not available      

            RAMTransaction.openConglomerate(long, boolean, int, int,
int) line: not available     

            B2I.lockTable(TransactionManager, int, int, int) line: not
available   

            BTreePostCommit.performWork(ContextManager) line: not
available           

            BasicDaemon.serviceClient(ServiceRecord) line: not available


            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     

 

 

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            BaseContainerHandle.useContainer(boolean, boolean) line: not
available     

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int, boolean) line: not available   

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int) line: not available    

            InternalXact(Xact).openContainer(ContainerKey,
LockingPolicy, int) line: not available          

            OpenHeap(OpenConglomerate).init(ContainerHandle,
Conglomerate, int[], TransactionManager, Transaction, boolean, int, int,
LockingPolicy, DynamicCompiledOpenConglomInfo) line: not available  

            Heap.open(TransactionManager, Transaction, boolean, int,
int, LockingPolicy, StaticCompiledOpenConglomInfo,
DynamicCompiledOpenConglomInfo) line: not available      

            RAMTransaction.openConglomerate(Conglomerate, boolean, int,
int, int, StaticCompiledOpenConglomInfo, DynamicCompiledOpenConglomInfo)
line: not available      

            RAMTransaction.openConglomerate(long, boolean, int, int,
int) line: not available     

            B2I.lockTable(TransactionManager, int, int, int) line: not
available   

            BTreePostCommit.performWork(ContextManager) line: not
available           

            BasicDaemon.serviceClient(ServiceRecord) line: not available


            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     

 

 

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            LinkedList<E>.addBefore(E, Entry<E>) line: not available  

            LinkedList<E>.add(E) line: not available   

            LockControl.addWaiter(List, Lock, LockSet) line: not
available       

            LockControl.addLock(LockSet, Object, Object) line: not
available   

            LockSet.lockObject(Object, Lockable, Object, int, Latch)
line: not available            

            SinglePool.lockAnObject(Object, Object, Lockable, Object,
int, Latch) line: not available     

            SinglePool.lockObject(Object, Object, Lockable, Object, int)
line: not available       

            ContainerLocking3.lockContainer(Transaction,
ContainerHandle, boolean, boolean) line: not available            

            BaseContainerHandle.useContainer(boolean, boolean) line: not
available     

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int, boolean) line: not available   

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int) line: not available    

            InternalXact(Xact).openContainer(ContainerKey,
LockingPolicy, int) line: not available          

            OpenHeap(OpenConglomerate).init(ContainerHandle,
Conglomerate, int[], TransactionManager, Transaction, boolean, int, int,
LockingPolicy, DynamicCompiledOpenConglomInfo) line: not available  

            Heap.open(TransactionManager, Transaction, boolean, int,
int, LockingPolicy, StaticCompiledOpenConglomInfo,
DynamicCompiledOpenConglomInfo) line: not available      

            RAMTransaction.openConglomerate(Conglomerate, boolean, int,
int, int, StaticCompiledOpenConglomInfo, DynamicCompiledOpenConglomInfo)
line: not available      

            RAMTransaction.openConglomerate(long, boolean, int, int,
int) line: not available     

            B2I.lockTable(TransactionManager, int, int, int) line: not
available   

            BTreePostCommit.performWork(ContextManager) line: not
available           

            BasicDaemon.serviceClient(ServiceRecord) line: not available


            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     

 

 

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            Thread.setPriority0(int) line: not available [native method]


            Thread.setPriority(int) line: not available   

            FileMonitor(BaseMonitor).setThreadPriority(int) line: not
available   

            FileMonitor.run() line: not available           

            AccessController.doPrivileged(PrivilegedExceptionAction<T>)
line: not available [native method]       

            FileMonitor.setThreadPriority(int) line: not available


            BasicDaemon.yield() line: not available    

            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     

 

 

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            TransactionTable.add(Xact, boolean) line: not available


            XactFactory.add(Xact, boolean) line: not available 

            XactFactory.pushTransactionContext(ContextManager, String,
Xact, boolean, RawStoreFactory, boolean) line: not available            

            XactFactory.startInternalTransaction(RawStoreFactory,
ContextManager) line: not available  

            RawStore.startInternalTransaction(ContextManager) line: not
available        

            RAMTransaction.getInternalTransaction() line: not available


            BTreePostCommit.performWork(ContextManager) line: not
available           

            BasicDaemon.serviceClient(ServiceRecord) line: not available


            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            BaseContainerHandle.useContainer(boolean, boolean) line: not
available     

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int, boolean) line: not available   

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int) line: not available    

            InternalXact(Xact).openContainer(ContainerKey,
LockingPolicy, int) line: not available          

            OpenHeap(OpenConglomerate).init(ContainerHandle,
Conglomerate, int[], TransactionManager, Transaction, boolean, int, int,
LockingPolicy, DynamicCompiledOpenConglomInfo) line: not available  

            Heap.open(TransactionManager, Transaction, boolean, int,
int, LockingPolicy, StaticCompiledOpenConglomInfo,
DynamicCompiledOpenConglomInfo) line: not available      

            RAMTransaction.openConglomerate(Conglomerate, boolean, int,
int, int, StaticCompiledOpenConglomInfo, DynamicCompiledOpenConglomInfo)
line: not available      

            RAMTransaction.openConglomerate(long, boolean, int, int,
int) line: not available     

            B2I.lockTable(TransactionManager, int, int, int) line: not
available   

            BTreePostCommit.performWork(ContextManager) line: not
available           

            BasicDaemon.serviceClient(ServiceRecord) line: not available


            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     

 

 

 

 

Thread [derby.rawStoreDaemon] (Suspended)      

            LinkedList<E>.remove(Entry<E>) line: not available          

            LinkedList<E>.remove(Object) line: not available   

            LockControl.removeWaiter(List, Object, LockSet) line: not
available            

            LockControl.giveUpWait(Object, LockSet) line: not available


            LockSet.lockObject(Object, Lockable, Object, int, Latch)
line: not available            

            SinglePool.lockAnObject(Object, Object, Lockable, Object,
int, Latch) line: not available     

            SinglePool.lockObject(Object, Object, Lockable, Object, int)
line: not available       

            ContainerLocking3.lockContainer(Transaction,
ContainerHandle, boolean, boolean) line: not available            

            BaseContainerHandle.useContainer(boolean, boolean) line: not
available     

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int, boolean) line: not available   

            BaseDataFileFactory.openContainer(RawTransaction,
ContainerKey, LockingPolicy, int) line: not available    

            InternalXact(Xact).openContainer(ContainerKey,
LockingPolicy, int) line: not available          

            OpenHeap(OpenConglomerate).init(ContainerHandle,
Conglomerate, int[], TransactionManager, Transaction, boolean, int, int,
LockingPolicy, DynamicCompiledOpenConglomInfo) line: not available  

            Heap.open(TransactionManager, Transaction, boolean, int,
int, LockingPolicy, StaticCompiledOpenConglomInfo,
DynamicCompiledOpenConglomInfo) line: not available      

            RAMTransaction.openConglomerate(Conglomerate, boolean, int,
int, int, StaticCompiledOpenConglomInfo, DynamicCompiledOpenConglomInfo)
line: not available      

            RAMTransaction.openConglomerate(long, boolean, int, int,
int) line: not available     

            B2I.lockTable(TransactionManager, int, int, int) line: not
available   

            BTreePostCommit.performWork(ContextManager) line: not
available           

            BasicDaemon.serviceClient(ServiceRecord) line: not available


            BasicDaemon.work(boolean) line: not available     

            BasicDaemon.run() line: not available       

            Thread.run() line: not available     


Mime
View raw message