ravendbnetshhttp.sysravendb-http

Raven.Server.exe Failed to grant rights for listening to http


I have installed RavenDB 2.5.0 as Windows Service. When I try to run Raven.Server.exe as Administrator or not I receive this:

Trying to revoke rights for http.sys
runas netsh http delete urlacl url=https://+:8080/
Trying to grant rights for http.sys
runas netsh http add urlacl url=http://+:8080/ user="Endri-PC\Endri"
Failed to grant rights for listening to http, exit codes: (1 and 1)
A critical error occurred while starting the server. Please see the exception de
tails bellow for more details:
System.InvalidOperationException: Could not write to location: C:\RavenDB\Databa
se\System. Make sure you have read/write permissions for this path. ---> Microso
ft.Isam.Esent.Interop.EsentFileAccessDeniedException: Cannot access file, the fi
le is locked or in use
   at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGen
erator, OrderedPartCollection`1 documentCodecs)
   --- End of inner exception stack trace ---
   at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGen
erator, OrderedPartCollection`1 documentCodecs)
   at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configura
tion, TransportState transportState)
   at Raven.Server.RavenDbServer..ctor(InMemoryRavenConfiguration settings)
   at Raven.Server.Program.RunServerInDebugMode(RavenConfiguration ravenConfigur
ation, Boolean launchBrowser)
   at Raven.Server.Program.RunInDebugMode(Nullable`1 anonymousUserAccessMode, Ra
venConfiguration ravenConfiguration, Boolean launchBrowser, Boolean noLog)
   at Raven.Server.Program.<>c__DisplayClass34.<InteractiveRun>b__1b()
   at Raven.Server.Program.InteractiveRun(String[] args)
   at Raven.Server.Program.Main(String[] args)
Press any key to continue...

Any idea what to do ?


Solution

  • I just had this same problem while I was following the "Basic Concepts" section of the RavenDB documentation, with the following output:

    C:\RavenDB>Raven.Server.exe
    Trying to grant rights for http.sys
    runas netsh http add urlacl url=http://+:8080/ user="User-PC\User"
    Failed to grant rights for listening to http, exit codes: (0 and 1)
    A critical error occurred while starting the server. Please see the exception details bellow for more details:
    System.InvalidOperationException: Could not write to location: C:\RavenDB\Data.
    Make sure you have read/write permissions for this path. ---> Microsoft.Isam.Esent.Interop.EsentFileAccessDeniedException: Cannot access file, the file is locked or in use
    <stack trace follows>
    

    The issue was that the RavenDB installer had automatically started the RavenDB Server as a Windows Service, preventing the command-line Raven.Server.exe from being able to access the right directory. I just opened the Services control panel (Start menu -> services.msc) and stopped the RavenDB service. After that, starting Raven.Server.exe from the command line worked as demonstrated in the documentation.

    Note that this is running on a Windows 7 x64 Professional machine in Development mode with RavenDB 2.5.2851.