IT researcher (5/3/2013)
As you said i can add replication once again and remove it.But it is a production server so i have to take care while doing it.
So is there any other method?
None that works reliably. I suppose you could export the entire DB and recreate it, but that would be rather a large waste of time.
You just need to replicate one table, can be the smallest table in the DB, doesn't matter. It's just so that SQL will clean up the replication properly
What if i change recovery model to simple and then shrink the log file and then once again change to full recovery model?
No effect whatsoever, the log is not waiting for a log backup, it's waiting for replication. Changing the recovery model will leave you a DB in simple recovery waiting for replication to clear the log and shrinkfile will do nothing.
Please, read the article I references above, most of this is explained in there.
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)SQL In The Wild
: Discussions on DB performance with occasional diversions into recoverability
We walk in the dark places no others will enter
We stand on the bridge and no one may pass