Avamar: SQL-back-up voltooid met fouten of uitzonderingen.
Summary: Avamar back-up met behulp van SQL-plug-in voltooid met uitzonderingen of fouten. 995 de I/O-bewerking is afgebroken vanwege een threadafsluiting, een applicatieaanvraag of een fout in het besturingssysteem 0x8007000e. (Er is niet genoeg opslagruimte beschikbaar om deze bewerking te voltooien.) ...
Symptoms
- Windows-toepassingslogboeken voor SQL Server.
10/9/2013 10:33:24 PM MSSQLSERVER Error Backup 3041 NT AUTHORITY\SYSTEM RFSQL03 BACKUP failed to complete the command BACKUP DATABASE ASAP. Check the backup application log for detailed messages. 10/9/2013 10:33:24 PM MSSQLSERVER Error Server 18210 NT AUTHORITY\SYSTEM RFSQL03 BackupVirtualDeviceSet::SetBufferParms: Request large buffers failure on backup device '(local)_ASAP_db_sched-sql_backup-1381372200061#12-3006-SQL'. Operating system error 0x8007000e(Not enough storage is available to complete this operation.).
- Avamar SQL-logboeken
2013-12-17 22:08:23 avsql Error <9072>: sqlconnectimpl_smo::execute Microsoft.SqlServer.Management.Common.ExecutionFailureException: An exception occurred while executing a Transact-SQL statement or batch. ---> System.Data.SqlClient.SqlException: Write on "(local)_TMEngine_8PM-BACKUP-SQL-1387332000116#1-3006-SQL" failed: 112 (There is not enough space on the disk.)
- Er is een onherstelbare I/O-fout opgetreden in het onderstaande bestand.
"(local)_TMEngine_8PM-DATACAPAPP01-SQL-1387332000116#1-3006-SQL:" 995(The I/O operation has been aborted because of either a thread exit or an application request.).
BACKUP DATABASE is terminating abnormally.
Cause
Er is een hoog geheugen- en CPU-gebruik waargenomen tijdens het back-upproces. De bovenstaande fout treedt op omdat avsql probeert de SQLVDI-interface-API (een gedeelde of statische bibliotheek) te gebruiken om data van de SQL-server te lezen. Onder normale omstandigheden gaat dit proces ervan uit dat geheugentoewijzing voor segmentdeling tijdens de overdracht is geslaagd. De gegevensoverdracht op de SQLVDI-interface mislukt, avsql registreert een bericht en verbreekt de pijp naar avtar tijdens het afsluitproces van de plug-in. De eerste stap is het valideren van het beschikbare SQL-geheugen door de volgende Transact-SQL-query's (TSQL) uit te voeren:
Volg de TSQL-query om het totale OS-geheugen en het beschikbare geheugen te controleren:
SELECT
(total_physical_memory_kb/1024) AS Total_OS_Memory_MB,
(available_physical_memory_kb/1024) AS Available_OS_Memory_MB
FROM sys.dm_os_sys_memory;
Hier is de query om het geheugen te controleren dat wordt verbruikt door SQL Server tijdens het uitvoeren van een Avamar-back-up:
SELECT
(physical_memory_in_use_kb/1024) AS Memory_used_by_Sqlserver_MB,
(locked_page_allocations_kb/1024) AS Locked_pages_used_by_Sqlserver_MB,
(total_virtual_address_space_kb/1024) AS Total_VAS_in_MB,
process_physical_memory_low,
process_virtual_memory_low
FROM sys.dm_os_process_memory;
Er moet ten minste 20% of meer vrij geheugen zijn om Avamar-back-ups goed te kunnen uitvoeren. SQL Server gebruikt standaard de meeste beschikbare geheugenbronnen. Het moet worden geconfigureerd om de hoeveelheid geheugen te beperken die is toegewezen voor SQL-bewerkingen om optimale prestaties te garanderen.
De andere bekende redenen voor deze storingen zijn:
- MAXTRANSFERSIZE is gewijzigd in 4 MB in Avamar 7.0, en we zien deze fout zelfs waar maxtransfer 64 KB was:
- Deze fout duidt vaak op onvoldoende schijfruimte, vooral tijdens herstelbewerkingen. Een geregistreerde fout kan bijvoorbeeld het volgende weergeven:
2024/05/01-18:25:39.60800 [avsql_t0] ===> avsql_avtarpipe_ctl::wait
2024/05/01-18:25:39.60899 [sqlcommand restore(FxCentral)] Caught Exception : Microsoft.SqlServer.Management.Common.ExecutionFailureException: An exception occurred while executing a Transact-SQL statement or batch. ---> System.Data.SqlClient.SqlException: There is insufficient free space on disk volume 'H:\' to create the database. The database requires 870622363648 additional free bytes, while only 140103278592 bytes are available
- Volgens Pinal Dave (https://blog.sqlauthority.com/2016/04/14/sql-server-backup-randomly-failing-error-112-not-enough-space-disk/) (Externe site)
- De grootte van een SQL-back-up van een gecomprimeerde database zou in het begin en aan het einde anders zijn en deze discrepantie kan tot deze fout leiden
- Bij het wijzigen van de MAXTRANSFERSIZE door de onderstaande avsql-vlag in te stellen zoals weergegeven, met name voor grote databaseback-ups
avsql flag : —max-transfer-size=65536
- Fout waargenomen nadat avsql connectiviteitsstoring meldde, zoals te zien is in het onderstaande fragment:
2020-11-03 15:32:36 avsql Info <10684>: Setting ctl message version to 3 (from 1)
2020-11-03 15:32:36 avsql Info <16136>: Setting ctl max message size to 268435456
2020-11-03 15:32:38 avsql Info <6688>: Process 9540 (C:\Program Files\avs\bin\avtar) finished (code 536870920: cannot establish connection with server (possible network or DNS failure))
2020-11-03 15:32:38 avsql Warning <6690>: CTL workorder "NAH-1604435554526#1" non-zero exit status 'code 536870920: cannot establish connection with server (possible network or DNS failure)'
2020-11-03 15:32:38 avsql Info <7732>: Waiting for avtar to finish
2020-11-03 15:32:38 avsql Info <6444>: Plugin exited with 'code 536870920: cannot establish connection with server (possible network or DNS failure)'
2020-11-03 15:32:38 avsql Error <18491>: SQL plug-in will now terminate due to the following avtar error: 'code 536870920: cannot establish connection with server (possible network or DNS failure)'
2020-11-03 15:32:38 avsql Info <6446>: SQL VDI transfer of 'sql_111\spd/SPMonitoring/f-0.SPMonitoring' to 'sql_111_spd_SPMonitoring_NAH-1604435554526-3006-SQL' successful
2020-11-03 15:32:38 avsql Error <40258>: sqlconnectimpl_smo::execute Microsoft.SqlServer.Management.Common.ExecutionFailureException: An exception occurred while executing a Transact-SQL statement or batch. ---> System.Data.SqlClient.SqlException: Write on "lfosat993_csotspd_SPMonitoring_NAH-1604435554526-3006-SQL" failed: 112(There is not enough space on the disk.)
-
- Naast het verminderen van deze symptomen zou het instellen van de "vditransfertimeoutsecs" op een grote waarde een time-out van de avtar-pijpverbinding voorkomen
Resolution
Gebruik een van de volgende methoden om vlaggen toe te voegen aan de MCGUI-gegevensset of aan het avsql.cmd-bestand:
- Methode #1 - Toevoegen aan dataset
- Voeg de volgende vlaggen toe aan een Dataset voor SQL Plug-in.
-
OPMERKING: Beide vlaggen moeten een leidende "[avsql]" hebben
[avsql]max-transfer-size=65536
[avsql]vditransfertimeoutsecs=10800
- Methode #2 - Toegevoegd aan het avsql.cmd-bestand
- Voeg de volgende vlaggen toe aan het bestand C:\Program Files\avs\var\avsql.cmd
--max-transfer-size=65536
--vditransfertimeoutsecs=10800
-
-
OPMERKING: In sommige gevallen kunnen grote virtuele machines een grotere waarde vereisen voor de time-outvlag:
-
- Methode #3 - Schakel de protocollen "Shared Memory", "Named Pipes" en "TCP/IP" uit en weer in via Config Manager (optie Ingeschakeld). Hiervoor moet SQL Server opnieuw worden opgestart:
