0X00001AB1

Fix ERROR_LOG_GROWTH_FAILED 0X00001AB1: Log Space Crisis

SQL Server can't grow its transaction log. Usually a full disk, maxed file size, or runaway transaction. Here's how to clear it fast.

Cause #1: The Disk is Full — Check That First

Nine times out of ten, this error is just a full drive. SQL Server can't extend the .ldf file because there's no room left. I had a client last month whose backup job filled up the E: drive overnight, and every transaction on their ERP system ground to a halt with exactly this error.

Don't overthink it. Check the free space on the drive where your log file lives:

EXEC xp_fixeddrives;

If free space is under 10% of the log file's current size, that's your problem. The fix is to free up space — delete old backups, move other files, whatever. If you can't free space quickly, add a new drive and move the log file there:

ALTER DATABASE YourDB MODIFY FILE (NAME = YourDB_Log, FILENAME = 'F:\MSSQL\Data\YourDB_log.ldf');

Then restart SQL Server. Make sure the new path exists first, or you'll get a different error.

Real talk: don't just shrink the log to buy time. That's like removing junk from your trunk to fit more groceries — it works, but you haven't solved the root cause. Better to move the log to a drive that has headroom.

Cause #2: The Log File Hit Its Max Size Cap

Another common one: someone set MAXSIZE on the log file to a fixed number, and once it hits that, SQL Server stops growing it. This error will fire even if the disk has plenty of space.

Check the current settings:

SELECT name, max_size, growth, is_percent_growth FROM sys.database_files WHERE type = 1;

If max_size is something like 2097152 (which is 2GB in 8KB pages) and the file is nearly that big, there's your culprit. The fix is simple — remove the cap or set it way higher:

ALTER DATABASE YourDB MODIFY FILE (NAME = YourDB_Log, MAXSIZE = UNLIMITED);

I'd also set growth to a reasonable percentage, like 10%, instead of a tiny fixed MB count. A log that grows 1MB at a time will cause constant file growth, which fragments the drive and slows things down.

Now, if you've got a log that's already blown up to 50GB because of a bad query, you need to shrink it after you've fixed the cap. But be careful — shrinking a log that's legitimately needed will just cause it to grow again later, and that churn can cause VLF fragmentation. Only shrink if you're sure the log is oversized because of an anomaly.

Cause #3: A Runaway Transaction is Holding the Log Hostage

Sometimes the disk is fine and the cap is unlimited, but the log still won't grow. That means a transaction has been open for so long that SQL Server can't truncate the log. The log is full of uncommitted transaction data, and it needs to grow to keep going.

I've seen this happen when someone runs a huge DELETE or UPDATE in a transaction and forgets to commit. Or a data import job that wraps a million-row insert in a single transaction. The log grows and grows until it hits the cap or fills the disk.

Find the culprit with this query:

SELECT session_id, command, start_time, status, text FROM sys.dm_exec_requests CROSS APPLY sys.dm_exec_sql_text(sql_handle) WHERE command IN ('UPDATE', 'DELETE', 'INSERT') OR status = 'running';

Once you spot the long-running transaction, kill it if it's stuck:

KILL 123; -- replace with the actual session_id

Then you can shrink the log to reclaim space:

DBCC SHRINKFILE (YourDB_Log, 100); -- target size in MB

But here's the thing — if the transaction was legitimate (like a nightly batch job), you need to break it into smaller batches instead of one giant transaction. That way the log can reuse space between batches without growing endlessly.

Also check if you're in full recovery mode and haven't taken a log backup in a while. That's a classic cause — the log never truncates until a backup happens. I had a shop that ran in full recovery but only backed up the database, not the log. Their log grew to 200GB before they called me. The fix was to schedule log backups every 15 minutes during peak hours.

Quick Reference Summary

SymptomLikely CauseFixTime to Fix
Disk has low free spaceLog can't extend physicallyFree up space or move log file to another drive10 minutes
Log file size is at MAXSIZECap set too lowRemove cap or increase it2 minutes
Disk fine, cap fine, but log won't growLong-running transaction or no log backupsKill transaction, shrink log, schedule log backups30 minutes

That's the whole playbook. If you've checked these three things and still see 0X00001AB1, it's worth checking for VLF corruption, but that's rare. Start with the disk, then the cap, then the transaction. You'll fix it 95% of the time without touching anything exotic.

One last piece of advice: after you fix this, set up a simple alert that pages you when free disk space drops below 20% on the log drive. Because this error is a symptom — the real problem is you were about to run out of space anyway, and you just didn't know it yet.

Related Errors in Database Errors
0X00001A9F Fix ERROR_HANDLE_NO_LONGER_VALID (0x1A9F) Transaction Handle FATAL: role 'username' does not exist Postgres Role Does Not Exist Error Fix 0XC000018A Fix STATUS_NO_TRUST_LSA_SECRET (0XC000018A) 1222 Fix SQL Server Error 1222 – Lock Request Timeout

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.