The LSN (70:729:1) passed to log scan in database 'bpl' is invalid

I have a .dbf file and a .ldf file and I am trying to restore the database in some other system.

I am using the follwing syntax to attach the database

EXEC sp_attach_db @dbname = N'<bpl>',
   @filename1 = N'd:\newdatafiles\bpl_2000_data.mdf',
   @filename2 = N'd:\newdatafiles\bpl_2000_log.ldf'

When I am doing so I am getting the following error
---
Server: Msg 9003, Level 20, State 1, Line 1
The LSN (70:729:1) passed to log scan in database 'bpl' is invalid.
Connection Broken
---

When I attach only the .dbf file. The database is created and the working fine. But I am getting error while attaching the .ldf file. What might be the problem.
AmbienceAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Guy Hengel [angelIII / a3]Connect With a Mentor Billing EngineerCommented:
if the .mdf and .ldf there are differences in the internal numbering of transactions:
* the data.mdf is copied to bck.mdf
* a transaction occurs (written to the data.mdf and the data.ldf)
* the data.ldf is copied to bck.ldf

Then the bck.mdf does not know about this new transaction which is in bck.ldf, and rejects to take this log file.

CHeers
0
 
Guy Hengel [angelIII / a3]Billing EngineerCommented:
I guess that either the database was not at all or not properly shut down when copying the files. Please enure that the source sql server was stopped when copying the files, or at least the database detached (sp_detach_db) from the server before starting the copy.
CHeers
0
 
AmbienceAuthor Commented:
Angelllll
Ok fine. Thanks,
But can you tell me what is the possible reason for such kind of error.
regds
0
A proven path to a career in data science

At Springboard, we know how to get you a job in data science. With Springboard’s Data Science Career Track, you’ll master data science  with a curriculum built by industry experts. You’ll work on real projects, and get 1-on-1 mentorship from a data scientist.

 
AmbienceAuthor Commented:
Angelllll
Ok fine. Thanks,
But can you tell me what is the possible reason for such kind of error.
regds
0
 
TheSpiritCommented:
A way that may avoid this is to issue a checkpoint command prior to taking the copy of the files
0
 
mironCommented:
sql server communicates with the rest of world using protective cushion of transaction log,
each sql server operation results in a transaction record being generated and logged into
transaction log. Each transaction is assigned unique LSN, sort of an index into array.
At every check point all transactions passed "commit" are written into data file with the
last transaction LSN ( offset id ) that is "in flight" being marked as last known transaction
in data file, as well as in Transaction file. Apparently for some reason LSN
marked as last known in Transaction File and Data File got out of synch.

What might have caused it is hard to guess. To avoid this condition use 'backup database' command.
Backup, if created successfully is guaranteed against similar mishaps.

Cheers

P. S.
--The LSN (70:729:1)
in your case was assigned to transaction log file while its offset id was not registered in the data file.
looking at the next couple of words in the error message
--passed to log scan in database 'bpl'
I read that during attach( ment ) database is actually going through a hidden "restore"
operation in somewhat reduced form, and one of the phases of this restore is re-scan of
existing transaction log file.
--is invalid.
means that the data file has no indication of such transaction existence
( remember, its LSN is not within known LSN(s) to data file )

what caused it - sadden electric current shutdown or hard drive capacity bottleneck,
or developer copying live database files using low level file access routines, hard to say.
What is apparent is a few transactions were lost with corrupted log file.

0
 
AmbienceAuthor Commented:
Miron,
Thanks for the detailed description. It made me realize what exactly happens. I have taken a backup after detaching the database and everything worked fine. But your explanation was real great.
Thanks Alot
0
 
AmbienceAuthor Commented:
Miron,
Thanks for the detailed description. It made me realize what exactly happens. I have taken a backup after detaching the database and everything worked fine. But your explanation was real great.
Thanks Alot
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.