0 votes
1 view
in Azure by (8.4k points)
recategorized by

I've had the Azure SDK 2.5 and Tools for VS2013 installed and working fine for quite a while. Today I installed the SDK and Tools for VS2015 and now my Azure Storage Emulator won't startup. On the first try to start it I got a SqlException:

Unhandled Exception: System.Data.SqlClient.SqlException:

An error occurred while processing the log for database If possible,

restore from backup. If a backup is not available, it might be

necessary to rebuild the log.

After rebooting the machine, I'm getting a lesser error:

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>WAStorageEmulator start Windows Azure Storage Emulator

3.4.0.0 command line tool Error: The storage emulator needs to be initialized. Please run the 'init' command.

But running init doesn't work:

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>WAStorageEmulator init Windows Azure Storage Emulator 3.4.0.0 command line tool Error: Cannot create database.

Starting with -inprocess says my login in failing. I'm an admin on the machine so this is odd.

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>WAStorageEmulator start -inprocess

Windows Azure Storage Emulator 3.4.0.0 command line tool

Cannot open database "WAStorageEmulatorDb34" requested by the login. The login failed.

Login failed for user 'DOMAIN\genslow'.

3/24/2015 10:00:57 AM [Info] Starting Service: Blob

3/24/2015 10:00:57 AM [Verbose_debug] [Nephos.Storage] { Initialize

3/24/2015 10:00:57 AM [Info_debug] Loading config Param NephosAllowPathStyleUris (Allow path-style URIs) read: true

3/24/2015 10:00:57 AM [Info_debug] Successfully loaded NephosAllowPathStyleUris: True

3/24/2015 10:00:57 AM [Info_debug] Loading config Param NephosIncludeInternalDetailsInErrorResponses (Include internal details in error responses) read: false

3/24/2015 10:00:57 AM [Info_debug] Successfully loaded NephosIncludeInternalDetailsInErrorResponses: False

3/24/2015 10:00:57 AM [Info_debug] Loading config Param StampName (Stamp Name) read: StorageEmulator

3/24/2015 10:00:57 AM [Info_debug] BlockBlob: Load Interval failed. IsGC: True, Exception    at System.Number.ParseDouble(String value, NumberStyles options, NumberFormatInfo numfmt)

   at Microsoft.WindowsAzure.DevelopmentStorage.Store.BlockBlobGarbageCollector.GetTimerIntervalOrDefault(Boolean isGC)

3/24/2015 10:00:57 AM [Info_debug] BlockBlob: Load Interval failed. IsGC: False, Exception    at System.Number.ParseDouble(String value, NumberStyles options, NumberFormatInfo numfmt)

   at Microsoft.WindowsAzure.DevelopmentStorage.Store.BlockBlobGarbageCollector.GetTimerIntervalOrDefault(Boolean isGC)

3/24/2015 10:00:57 AM [Verbose_debug] [Nephos.Storage] } Initialize

Service Status: Blob http://127.0.0.1:10000/ True

3/24/2015 10:00:57 AM [Info] Starting Service: Queue

3/24/2015 10:00:57 AM [Verbose_debug] [Nephos.Queue] { Initialize

3/24/2015 10:00:57 AM [Info_debug] Loading config Param NephosAllowPathStyleUris (Allow path-style URIs) read: true

3/24/2015 10:00:57 AM [Info_debug] Successfully loaded NephosAllowPathStyleUris: True

3/24/2015 10:00:57 AM [Info_debug] Loading config Param NephosIncludeInternalDetailsInErrorResponses (Include internal details in error responses) read: false

3/24/2015 10:00:57 AM [Info_debug] Successfully loaded NephosIncludeInternalDetailsInErrorResponses: False

3/24/2015 10:00:57 AM [Info_debug] Loading config Param StampName (Stamp Name) read: StorageEmulator

3/24/2015 10:00:57 AM [Verbose_debug] [DevelopmentStorage.Queue] } Initialize

Service Status: Queue http://127.0.0.1:10001/ True

3/24/2015 10:00:57 AM [Info] Starting Service: Table

3/24/2015 10:00:57 AM [Verbose_debug] [Nephos.Table] { Initialize

3/24/2015 10:00:57 AM [Info_debug] Loading config Param NephosAllowPathStyleUris (Allow path-style URIs) read: true

3/24/2015 10:00:57 AM [Info_debug] Successfully loaded NephosAllowPathStyleUris: True

3/24/2015 10:00:57 AM [Info_debug] Loading config Param NephosIncludeInternalDetailsInErrorResponses (Include internal details in error responses) read: false

3/24/2015 10:00:57 AM [Info_debug] Successfully loaded NephosIncludeInternalDetailsInErrorResponses: False

3/24/2015 10:00:57 AM [Info_debug] Loading config Param StampName (Stamp Name) read: StorageEmulator

3/24/2015 10:00:57 AM [Info] NOT using custom threadpool for blocking calls

Service Status: Table http://127.0.0.1:10002/ True

Running init with -inprocess gives the following detail:

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>WAStorageEmulator init -inprocess

Windows Azure Storage Emulator 3.4.0.0 command line tool

Added reservation for http://127.0.0.1:10000/ in user account DOMAIN\genslow.

Added reservation for http://127.0.0.1:10001/ in user account DOMAIN\genslow.

Added reservation for http://127.0.0.1:10002/ in user account DOMAIN\genslow.

Found SQL Instance (localdb)\MSSQLLocalDB.

Creating database WAStorageEmulatorDb34 on SQL instance '(localdb)\MSSQLLocalDB'.

Cannot create database 'WAStorageEmulatorDb34' : Database 'WAStorageEmulatorDb34' already exists. Choose a different database name..

One or more initialization actions have failed. Resolve these errors before attempting to run the storage emulator again.

Error: Cannot create database 'WAStorageEmulatorDb34' : Database 'WAStorageEmulatorDb34' already exists. Choose a different database name..

So, is there any way to recover from this or should I uninstall everything and start over?

1 Answer

0 votes
by (16.8k points)

You can use the following process to recover from most init problems involving the database. Note that any data in the emulator currently will be lost.

Delete the SQL instance:

sqllocaldb stop MSSQLLocalDB

sqllocaldb delete MSSQLLocalDB

Now delete the following database files:

%USERPROFILE%\AzureStorageEmulatorDb*.mdf

%USERPROFILE%\AzureStorageEmulatorDb*.ldf

Finally, recreate the sql instance:

sqllocaldb start MSSQLLocalDB

Then retry the emulator init.

...