eseutil /r e00 fails with "Operation terminated with error -1808 (JET_errDiskFull, No space left on disk)" but disk is not full

Posted on 2011-04-18
Last Modified: 2012-05-11
I have an Exchange 2003 server that the information stores are failing to mount.  I am trying to run the repair ( eseutil /r e00 ) but it keeps failing with: "Operation terminated with error -1808 (JET_errDiskFull, No space left on disk)" even though there is 57 GB of free space and the Exchange files are less than 4GB in size.
Question by:bdhtechnology
    LVL 3

    Accepted Solution

    You must add all of the log files, all the edb files, and all the stm files you fund in the MDBDATA folder.  You must have 110% free space based on the size of the files above.

    As a general rule, you should always run Eseutil /r from the folder where the transaction log files (E00*.*) to be replayed exist.  Also, make sure all Exchange services are stopped except Exchange System Attendent, and dismount the info store (I know you said it wouldn't mount, so that should be fine, but just checking ;)).  Lastly, realize this is an extremely dangerous process and should be pursued after all other options.  Have you tried:

    eseutil /g (Integrity) or eseutil /p (repair)

    Also, have you run this command?  it will tell you if there are extended errors that require this type of hard recovery:

    c:\program files\exchsrvr\bin>isinteg -s servername -fix -test alltests

    I can help you past this if you can provide the answer to total file sizes.  If the files are definitely smaller than 110% free space and you've definitely dismounted the info store, get back to me and I'll go from there.

    Good luck!
    LVL 1

    Author Comment

    The total of all the files in the MDBDATA folder is 3.19 GB so there is definitely enough space on the drive to run it.  That's why I am confused.

    I am running the eseutil /r from the folder where the transaction log files are:
    C:\Program Files\Exchsrvr\MDBDATA>..\bin\eseutil.exe /r e00

    The store files were definitely dismounted but I made sure all the Exchange services were stopped except Exchange System Attendant now.

    Both options (/g /p) say to run the recovery operation first because the database is not up-to-date.  /p will continue even though it's not up-to-date I was just weary since I know it's not up-to-date.  It is running /p now so I'll keep you updated past that and if it fails try the isinteg command as well.
    LVL 2

    Assisted Solution


    Honestly, before running the eseutil /p (database repair), running eseutil /mh would be best to verify if the database is in a dirty shutdown.  If it is not, what is the use of running the repair.  He could simply force the replay of the logs with /cc.  I agree that checking the integrity would be the best place to start, then the database state before determining any further actions to take.
    LVL 1

    Author Comment

    So esutil /p priv1.edb ran and completed:
    Repairing damaged tables.
                         Scanning Status (% complete)
              0    10   20   30   40   50   60   70   80   90  100
    Deleting unicode fixup table.
    Repair completed. Database corruption has been repaired!

    Open in new window

    I tried to restart the Exchange services and mount the information store but it fails with error 0xfffffb40 in the event log.  I am guessing this is because a repair was performed before replaying the logs.  I deleted the logs and it started fine.  I know this is a terrible idea but all this Exchange server is really used for is calendar sharing.  All of the e-mail is done on an external server.  The information had apparently been done for 2 weeks before anyone noticed anyway.
    LVL 17

    Assisted Solution

    1. once you do a repair against a database you CAN NOT replay previous logs against that database.  Only the NEW logs generated post /P will work against that database.

    2. If you have not already done so you should get a full online backup of the database ASAP

    3. When you did the /P did you do anything else thereafter i.e. an ESEutil /D  or run Isinteg against the database in order to clear out any potential issues ?
    LVL 1

    Author Closing Comment

    answer fixed the problem, however some data was lost in the process
    LVL 17

    Expert Comment

    Thanks for the points and glad you were able to get your issue resolved

    Featured Post

    PRTG Network Monitor: Intuitive Network Monitoring

    Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

    Join & Write a Comment

    We are happy to announce a brand new addition to our line of acclaimed email signature management products – CodeTwo Email Signatures for Office 365.
    In this video we show how to create a User Mailbox in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Recipients >> Mailb…
    To show how to create a transport rule in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Mail Flow >> Rules tab.:  To cr…

    755 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    20 Experts available now in Live!

    Get 1:1 Help Now