Hello,
I'm having troubles with a database. The transaction log is full.
When I look at syslogshold, the oldest transaction in the database belongs to spid6 :
Database Start spid User Name
--------------- -------------------- ------ -------- ------------------------
workflow_db 24 Feb 2014 18:39:38 6 NULL $dmpxact
spid 6 is the checkpoint task :
spid status loginame host progname blk dbname cmd
---- -------- -------- ------ -------- ---- ---------- ------------------------------
1 recv sle wlprd02 CR2920 WL_7001 0 weblogic_d AWAITING COMMAND
2 sleeping NULL NULL NULL 0 master DEADLOCK TUNE
3 sleeping NULL NULL NULL 0 master KPP HANDLER
4 sleeping NULL NULL <astc> 0 master ASTC HANDLER
5 sleeping NULL NULL <astc> 0 master ASTC HANDLER
6 PLC slee NULL NULL NULL 0 workflow_d CHECKPOINT SLEEP
7 sleeping NULL NULL NULL 0 workflow_d HK WASH
8 sleeping NULL NULL NULL 0 master HK GC
9 sleeping NULL NULL NULL 0 master HK CHORES
10 sleeping NULL NULL NULL 0 master PORT MANAGER
11 sleeping NULL NULL NULL 0 master NETWORK HANDLER
When I try to alter the database to extend the log, it's hanging on process 6 :
spid status loginame host progname blk dbname cmd
------ -------- -------- ------ -------- ---- ---------- ------------------------------
8 sleeping NULL NULL NULL 0 master HK GC
9 sleeping NULL NULL NULL 0 master HK CHORES
131 sleeping wlprd02 j2eete WL_7081 0 weblogic_d INSERT
161 sleeping sa xena-d sqsh-2.1 0 workflow_d DBCC
189 lock sle sa xena-d sqsh-2.1 6 master ALTER DATABASE
402 sleeping jparent CR2920 NULL 0 workflow_d DELETE
Proccesses 8 and 9 also have locks in the workflow_db :
spid locktype table_name page dbname
------ ------------------ -------------------- ------------- ---------------
8 Sh_page sysmessages 1413 master
8 Sh_page sysmessages 1857 master
8 Ex_intent JBPM_VARIABLEINSTANC 0 workflow_db
9 Sh_page sysmessages 1413 master
9 Sh_page sysmessages 1857 master
9 Sh_intent JBPM_VARIABLEINSTANC 0 workflow_db
9 Ex_intent systabstats 0 workflow_db
Process 161 is executing a dbcc checktable(syslogs) command which also hangs on a full transaction log :
[102] DST_ST_2.sa.workflow_db.1> dbcc checktable(syslogs);
Checking table 'syslogs' (object ID 8): Logical page size is 4096 bytes.
Checking partition 'syslogs_8' (partition ID 8) of table 'syslogs'. The logical page size
of this table is 4096 bytes.
The total number of data pages in partition 'syslogs_8' (partition ID 8) is 50996.
Partition 'syslogs_8' (partition ID 8) has 2041034 data rows.
The total number of data pages in this table is 50996.
*** NOTICE: Space used on the log segment is 51196 pages (199.98 MB), 99.99%.
*** NOTICE: Space reserved on the log segment is 18 pages (0.07 MB), 0.04%.
*** NOTICE: Space free on the log segment is -14 pages (-0.05 MB), -0.03%.
Table has 2041034 data rows.
Processed 10241 allocation unit(s) out of 20480 units (allocation page 2621440). 50% completed.
Processed 12288 allocation unit(s) out of 20480 units (allocation page 3145472). 60% completed.
Processed 14336 allocation unit(s) out of 20480 units (allocation page 3669760). 70% completed.
Processed 16384 allocation unit(s) out of 20480 units (allocation page 4194048). 80% completed.
Processed 18432 allocation unit(s) out of 20480 units (allocation page 4718336). 90% completed.
Processed 20480 allocation unit(s) out of 20480 units (allocation page 5242624). 100% completed.
Processed 22528 allocation unit(s) out of 20480 units (allocation page 5766912). 110% completed.
Processed 24576 allocation unit(s) out of 20480 units (allocation page 6291200). 120% completed.
Processed 26624 allocation unit(s) out of 20480 units (allocation page 6815488). 130% completed.
Processed 28672 allocation unit(s) out of 20480 units (allocation page 7339776). 140% completed.
Processed 30720 allocation unit(s) out of 20480 units (allocation page 7864064). 150% completed.
Processed 34897 allocation unit(s) out of 30720 units (allocation page 8933376). 113% completed.
Processed 37786 allocation unit(s) out of 30720 units (allocation page 9672960). 123% completed.
Processed 40858 allocation unit(s) out of 30720 units (allocation page 10459392). 133% completed.
Processed 43930 allocation unit(s) out of 30720 units (allocation page 11245824). 143% completed.
Processed 47002 allocation unit(s) out of 30720 units (allocation page 12032256). 153% completed.
Msg 1105, Level 17, State 7
Server 'DST_ST_2_b', Line 1
Can't allocate space for object 'syslogs' in database 'workflow_db' because 'logsegment'
segment is full/has no free extents. If you ran out of space in syslogs, dump the
transaction log. Otherwise, use ALTER DATABASE to increase the size of the segment.
Msg 3475, Level 21, State 7
Server 'DST_ST_2_b', Line 1
There is no space available in SYSLOGS to log a record for which space has been reserved
in database 'workflow_db' (id 58). This process will retry at intervals of one minute.
Something seems wrong with the numbers and percentages.
Dataserver version is :
Adaptive Server Enterprise/15.7/EBF 21709 SMP SP110 /P/Solaris AMD64/OS 5.10/ase157sp11x/3546/64-bit/FBO/Fri Nov 8 06:01:08 2013
De database was loaded from a dump made on a :
Adaptive Server Enterprise/15.7.0/EBF 20734 SMP ESD#03 /P/Solaris AMD64/OS 5.10/ase157 esd3/3183/64-bit/FBO/Sat Dec 8 19:24:28 2012
system.
Any idea how to proceed ?
Thanks,
Luc.