SQLA 11 100% cpu on dbstop

We are running a SQLAnywhere 11.0.1.2376 engine on Windows as a service. 
Then from a separate machine, we do a "dbstop ..." trying to stop this 
database engine.
1 out of 4 times the dbstop cannot complete.  The engine goes into 100% CPU 
state and dbstop does not return.  The service status shows: "Stop pending" 
for the database engine.  The system event log shows:
    SQLANYs_Database: Normal shutdown of service SQLANYs_Database
Is this a known problem?
What we want to achieve is to swap the database file that is running on this 
engine.  I.e. we prepared another database file with updated data.  We want 
to stop the existing database and put the new database in.  Is there another 
way to do this?
Thanks.
-- Jiang Wu
   jwu@retrevo.com
 
0
Jiang
1/12/2011 6:38:36 PM
📁 sybase.sqlanywhere.general
📃 32637 articles.
⭐ 22 followers.

💬 2 Replies
👁️‍🗨️ 1455 Views


Hello Jiang,
On 12/01/2011 1:38 PM, Jiang Wu wrote:
> We are running a SQLAnywhere 11.0.1.2376 engine on Windows as a service.
> Then from a separate machine, we do a "dbstop ..." trying to stop this
> database engine.
>
> 1 out of 4 times the dbstop cannot complete. The engine goes into 100%
> CPU state and dbstop does not return. The service status shows: "Stop
> pending" for the database engine. The system event log shows:
There are a number of operations the database server must perform once a 
shut-down has been triggered - it is possible that these events are 
taking a 'long time'.
To start, any open transactions for open connections will need to be 
rolled back and the rollback log applied: 
http://dcx.sybase.com/index.html?r=1#1200en/dbadmin/da-backup-dbs-5662212.html
A checkpoint also needs to occur: 
http://dcx.sybase.com/index.html?r=1#1200en/dbadmin/da-backup-dbs-5657414.html
---
Do you have a console log (-z -o) from the time that the server is 
taking a 'long time' (how long do you normally wait?) and what it's 
actually doing once it has received a stop request?
> What we want to achieve is to swap the database file that is running on
> this engine. I.e. we prepared another database file with updated data.
> We want to stop the existing database and put the new database in. Is
> there another way to do this?
There are many ways to 'merge' new data; we would have to know more 
about your business case to better understand your requirements and the 
'best' way to achieve them.
Regards,
-- 
Jeff Albion, Sybase iAnywhere, an SAP Company
iAnywhere Developer Community : 
http://www.sybase.com/developer/library/sql-anywhere-techcorner
iAnywhere Documentation : http://www.ianywhere.com/developer/product_manuals
SQL Anywhere Patches and EBFs : 
http://downloads.sybase.com/swd/summary.do?baseprod=144&client=ianywhere&timeframe=0
Report a Bug/Open a Case : http://case-express.sybase.com/cx/
0
Jeff
1/14/2011 8:02:28 PM
"Jeff Albion [Sybase iAnywhere]" <firstname.lastname@sybase.com> wrote in 
message news:4d30abd4$1@forums-1-dub...
>
> Do you have a console log (-z -o) from the time that the server is taking 
> a 'long time' (how long do you normally wait?) and what it's actually 
> doing once it has received a stop request?
>
I don't have the log right now.  I will enable it for the next time.
For this database, we use -m.  At the time of the stop request, it is not 
doing much.  The transaction log file size is around 8k, indicating that 
checkpoint has finished.
When the database stops normally, it will take a few seconds. When it hits 
this loop condition, it will never stop.  We have this on a test system that 
schedules the stop.  It can be in the 100% cpu state for the entire weekend 
and still running on Monday.  We have to kill the engine process manually 
each time.
We are going to try using "STOP DATABASE ..." through a dbisql connection 
next to see if that works.
-- Jiang Wu
   jwu@retrevo.com
 
0
Jiang
1/15/2011 6:44:45 PM
Reply: