What are the challenges you face when working across database platforms? Take the survey
Options

Error: Msg 3013, Level 16, State 1, Server BEET, Line 1

Jeff RandallJeff Randall Posts: 41
edited January 24, 2006 11:58AM in SQL Backup Previous Versions
Running this command:

master..sqlbackup
'-SQL "BACKUP DATABASE [ic001Commonprd]
TO DISK = ''\\endive\d$\SQLBackups\BEET_ic001CommonPrd.sqb''
WITH NAME = ''Server: BEET, Database: ic001Commonprd'',
DESCRIPTION = ''Server: BEET, Database: ic001Commonprd'',
INIT, VERIFY, ERASEFILES = 1, COMPRESSION = 1" -E'
Go


I am receiving the following error:

SQL Backup 3.2.0, (c) Red Gate Software Ltd 2004 - 2005
Serial number: xxx-xxx-xxxxxx-xxxx
Backing up ic001Commonprd (full database) to \\endive\d$\SQLBackups\BEET_ic001CommonPrd.sqb ...
Thread 0 error:
Process terminated unexpectedly. Error code: -2139684860
Msg 3013, Level 16, State 1, Server BEET, Line 1
BACKUP DATABASE is terminating abnormally.

This is running as a SQL Job nightly, and was working daily until the middle of last week, and since then has only succeeded once.

I tried running “dbcc sqlbackup (free)” with no difference in the problem.

Rebooting the server is not an option, and of the servers I am running this on, this is the one that was rebooted the most recently..

Comments

  • Options
    peteypetey Posts: 2,358 New member
    Could you pls check the vdi.log file in SQL Server's log folder? What is the error that's reported for the failed backups?
    Peter Yeoh
    SQL Backup Consultant Developer
    Associate, Yohz Software
    Beyond compression - SQL Backup goodies under the hood, updated for version 8
  • Options
    Contents of VDI.LOG:

    2006/01/23 11:04:08 pid(1168) tid(2640)
    Error on Global\SQLBACKUP_176533117
    Error at ServerBufferAreaManager::Allocate: Map buffers Status Code: 8, x8
    Explanation: Not enough storage is available to process this command.



    2006/01/23 11:04:08 pid(1168) tid(2640)
    Error on Global\SQLBACKUP_176533117
    Error at TriggerAbort: invoked

    2006/01/23 11:04:08 pid(3004) tid(2972)
    Error on Global\SQLBACKUP_176533117
    Error at CVD::GetCommand: AbortDetected

    2006/01/23 11:04:08 pid(1168) tid(2688)
    Error on Global\SQLBACKUP_176533117
    Error at TriggerAbort: invoked

    2006/01/23 11:04:08 pid(1168) tid(2688)
    Error on Global\SQLBACKUP_176533117
    Error at SVDS::CloseDevice: Abort detected

    2006/01/23 11:04:08 pid(1168) tid(2688)
    Error on Global\SQLBACKUP_176533117
    Error at TriggerAbort: invoked

    2006/01/23 11:04:08 pid(1168) tid(2640)
    Error on Global\SQLBACKUP_176533117
    Error at TriggerAbort: invoked

    2006/01/23 11:04:08 pid(3004) tid(2972)
    Error on Global\SQLBACKUP_176533117
    Error at TriggerAbort: invoked

    2006/01/23 11:04:08 pid(3004) tid(1968)
    Error on Global\SQLBACKUP_176533117
    Error at TriggerAbort: invoked

    2006/01/23 11:04:12 pid(1168) tid(2640)
    Error on Global\SQLBACKUP_176295549
    Error at ServerBufferAreaManager::Allocate: Map buffers Status Code: 8, x8
    Explanation: Not enough storage is available to process this command.



    2006/01/23 11:04:12 pid(1168) tid(2640)
    Error on Global\SQLBACKUP_176295549
    Error at TriggerAbort: invoked

    2006/01/23 11:04:12 pid(1968) tid(208)
    Error on Global\SQLBACKUP_176295549
    Error at CVD::GetCommand: AbortDetected

    2006/01/23 11:04:12 pid(1168) tid(2688)
    Error on Global\SQLBACKUP_176295549
    Error at TriggerAbort: invoked

    2006/01/23 11:04:12 pid(1168) tid(2688)
    Error on Global\SQLBACKUP_176295549
    Error at SVDS::CloseDevice: Abort detected

    2006/01/23 11:04:12 pid(1168) tid(2688)
    Error on Global\SQLBACKUP_176295549
    Error at TriggerAbort: invoked

    2006/01/23 11:04:12 pid(1168) tid(2640)
    Error on Global\SQLBACKUP_176295549
    Error at TriggerAbort: invoked

    2006/01/23 11:04:12 pid(1968) tid(208)
    Error on Global\SQLBACKUP_176295549
    Error at TriggerAbort: invoked

    2006/01/23 11:04:12 pid(1968) tid(3004)
    Error on Global\SQLBACKUP_176295549
    Error at TriggerAbort: invoked
  • Options
    peteypetey Posts: 2,358 New member
    Download this utility http://www.yohz.com/downloads/memstat.zip.

    Run it from the command prompt, passing in the process id (pid) of the SQL Server process. This will tell you if the SQL Server free memory is too fragmented to allow SQL Backup to run.
    Peter Yeoh
    SQL Backup Consultant Developer
    Associate, Yohz Software
    Beyond compression - SQL Backup goodies under the hood, updated for version 8
  • Options
    The process only runs for approx 6-7 secodns before failing, however, I can't seem to get memstat to work. Perhaps I am calling it incorrectly?



    C:\>memstat 100
    memstat - Yohz Software (c) 2005 - 2006

    The parameter is incorrect

    C:\>memstat /?
    memstat - Yohz Software (c) 2005 - 2006

    usage - memstat [process id]

    C:\>memstat [100]
    memstat - Yohz Software (c) 2005 - 2006

    usage - memstat [process id]
  • Options
    peteypetey Posts: 2,358 New member
    Is the SQL Server process id 100 as listed in the Windows Task Manager? Running it as

    memstat 100

    should work then.
    Peter Yeoh
    SQL Backup Consultant Developer
    Associate, Yohz Software
    Beyond compression - SQL Backup goodies under the hood, updated for version 8
  • Options
    SQLMangr
    C:\>memstat 2796
    memstat - Yohz Software (c) 2005 - 2006

    Type Minimum Maximum Average Blk count Total





    Commit 4096 1196032 46672 337 15728640
    Reserve 4096 1073676288 26656068 41 1092898816
    Free 4096 562208768 24281982 87 2112532480
    Private 4096 1073676288 12097536 90 1088778240
    Mapped 4096 3092480 338375 18 6090752
    Image 4096 1196032 50957 270 13758464

    SQLMaint
    C:\>memstat 3044
    memstat - Yohz Software (c) 2005 - 2006

    Type Minimum Maximum Average Blk count Total





    Commit 4096 2768896 66243 301 19939328
    Reserve 12288 1073676288 37571619 29 1089576960
    Free 4096 560308224 29328384 72 2111643648
    Private 4096 1073676288 18137634 60 1088258048
    Mapped 4096 1019904 177152 20 3543040
    Image 4096 2768896 70860 250 17715200

    SQLMangr while attempting the backup which failed
    C:\>memstat 2796
    memstat - Yohz Software (c) 2005 - 2006

    Type Minimum Maximum Average Blk count Total





    Commit 4096 1196032 48366 360 17412096
    Reserve 4096 1073676288 26034273 42 1093439488
    Free 4096 560308224 23447870 90 2110308352
    Private 4096 1073676288 11719272 93 1089892352
    Mapped 4096 3092480 338375 18 6090752
    Image 4096 1196032 51094 291 14868480
  • Options
    peteypetey Posts: 2,358 New member
    Please run memstat using the process id of the sqlservr.exe process. That's the SQL Server process. Thanks.
    Peter Yeoh
    SQL Backup Consultant Developer
    Associate, Yohz Software
    Beyond compression - SQL Backup goodies under the hood, updated for version 8
  • Options
    sqlservr This is connecting through TermSrvc as the same DomainAdmin account that SQLServer was installed under.

    C:\>memstat 1168
    memstat - Yohz Software (c) 2005 - 2006

    Access is denied
  • Options
    peteypetey Posts: 2,358 New member
    What if you ran it from Query Analyzer e.g.

    xp_cmdshell '<path>\memstat 1168'
    Peter Yeoh
    SQL Backup Consultant Developer
    Associate, Yohz Software
    Beyond compression - SQL Backup goodies under the hood, updated for version 8
  • Options
    memstat - Yohz Software (c) 2005 - 2006
    NULL
    Type Minimum Maximum Average Blk count Total





    Commit 4096 1073479680 0 3468 -1268203520
    Reserve 4096 4128768 390352 196 76509184
    Free 4096 3735552 143414 822 117886976
    Private 4096 1073479680 0 3162 -1226461184
    Mapped 4096 1536000 166461 50 8323072
    Image 4096 5836800 58503 452 26443776
    NULL
    NULL
  • Options
    peteypetey Posts: 2,358 New member
    The free memory in the SQL Server process space is inadequate for SQL Backup's needs. SQL Backup requires a few contiguous 1 MB blocks of memory to work. The current free memory appears to be badly fragmented, divided over 822 blocks.

    Do you know what may be causing the fragmentaion?

    In SQL Backup 4, when it encounters such a situation, it will step down it's memory requirements to try to get the backup through. While this will not solve the problem entirely, there is a higher chance that the backup will succeed.
    Peter Yeoh
    SQL Backup Consultant Developer
    Associate, Yohz Software
    Beyond compression - SQL Backup goodies under the hood, updated for version 8
  • Options
    This houses a production DB which handles all login requests to our system

    As well the other production servers are using native SQL Log Shipping (yes I know, I'm planning to move it to SQL Backup Log Shipping soon) and this server is the one which they are being shipped to

    So there are constantly alot of processes on this machine at any moment in time, however it generally has fewers concurrent processes at any given moment than the other productions servers

    Once I switch to SQL Backup Log Shipping I will be doing a round robin type of setup for the Log Shipping (server 1 sends to 2, 2 sends to 3, 3 sends to 4, 4 sends to 5, 5 sends to 1) which may reduce the traffic to any one server.



    I do plan to upgrade to v4, but as this is a production environment, I'll have to wait for a scheduled maintenance window, and it would be nice to have this working a bit more regularly in the meantime.
  • Options
    peteypetey Posts: 2,358 New member
    It might be worthwhile to pinpoint the cause of the fragmentation. From what you described, fragmentation shouldn't be a problem on this server. Are you running any other extended stored procedures or external functions and the like?
    Peter Yeoh
    SQL Backup Consultant Developer
    Associate, Yohz Software
    Beyond compression - SQL Backup goodies under the hood, updated for version 8
Sign In or Register to comment.