Quantcast
Channel: SCN: Message List - SAP Adaptive Server Enterprise (SAP ASE) for Custom Applications
Viewing all articles
Browse latest Browse all 3587

Re: SAP ASE 16 "trunc log on chkpt" is enabled, but does not work.

$
0
0

One thing you might want to check.....since this is an upgraded server, you might need to increase the stack and stack guard size.   I have seen issues with procs not executing (e.g. sp_sysmon) on upgraded ASE's that had smaller stacks previously:

 

exec sp_configure 'stack size', 194560

exec sp_configure 'stack guard size', 20480

 

...that may be enough to get sp_sysmon and MDA working to allow better diagnostics

 

You also said that there wasn't any long running open txns.    As you are aware, of course, checkpoint can't truncate passed the truncation point (oldest open txn)....it might be interesting to see where things are with respect to that....you might want to look up loginfo() and during one of the batches do something like:

 

declare @n int

set @n=0

while @n<=1000

begin

select loginfo(<dbname>,first_page) as first_page,

     loginfo(<dbname>,checkpoint_page) as checkpoint_page,

     loginfo(<dbname>,oldest_active_transaction_page) as oldest_txn_page

waitfor delay '00:00:01'

select @n=@n+1

end

go

 

.....by letting it run for 1000 secs, there should be several checkpoints fire....

 

I also wonder what happens if you do:

 

use master

go

sp_dboption dbname, 'trunc', false

go

use dbname

go

checkpoint

go

use master

go

sp_dboption dbname, 'trunc', true

go

use dbname

go

checkpoint

go

 

...in otherwords, I wonder if the bit is set in the system catalog, but the dbtable structure on disk is messed up.   You might be able to verify this by checking with dbtable for DBT_AUTOTRUNC:

 

1> use demo_db
2> go
1> dbcc traceon(3604)
2> go
DBCC execution completed. If DBCC printed error messages, contact a user with System Administrator (SA) role.
1> dbcc dbtable('demo_db')
2> go

DBTABLES (ACTIVE):

DB Table at: 0x0000000029C4C8C0


dbt_dbid=8   dbt_stat=0xc (0x0008 (DBT_AUTOTRUNC), 0x0004 (DBT_SELBULK))
dbt_extstat=0x0 (0x0000)
dbt_stat2=0xffff8003 (0x8000 (DBT2_MIXED_LOG_DATA), 0x0002 (DBT2_NOACCOUNT), 0x0001 (DBT2_LOGFULLABT))
dbt_stat3=0x20800 (0x00020000 (DBT3_SYSPARTITIONS_EXISTS), 0x00000800 (DBT3_DELAYED_COMMIT))
dbt_stat4=0x0 (0x00000000)
dbt_runstat=0x0(0x0000)
dbt_state=0x2(0x0002 (DBST_ACTIVE))   dbt_keep=1  dbt_hdeskeep=0 dbt_next=0x0000000029C44C20   dbt_systask_keep=0 dbt_detachxact_keep 0
dbt_lock=0  dbt_dbaid=1
dbt_verstimestamp= Oct 22 2009  6:28AM   dbt_dbname=demo_db
dbt_logrows=0
dbt_lastlogbp=0x00000000438A06F0
dbt_logsema=0000000003BAEE40
dbt_nextseq=12  dbt_oldseq=12

 

....if not in dbtable, then doing the dboption toggle might help.   Otherwise, something is affecting the checkpoint spid in that it isn't running at all - e.g. someone changed the user priority or something.....


Viewing all articles
Browse latest Browse all 3587

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>