Giter Club home page Giter Club logo

Comments (7)

ArnaudG avatar ArnaudG commented on September 13, 2024

I am facing a very problem within a visual studio test project using SQLite.Data.dll : the SQLite.Interop.dll (that is a c DLL wrapped by sqlite.data.dll) stays in use until i reboot my visual Studio.
Did you find a solution ?

from sqlite-net.

praeclarum avatar praeclarum commented on September 13, 2024

The test project is just a standard Metro app. So I wonder if it's not being unloaded? Open Task Manager and look to see if it's running?

Otherwise, Process Explorer should be able to determine which process is hanging onto sqlite3.dll.

from sqlite-net.

damirarh avatar damirarh commented on September 13, 2024

I didn't find a solution for the built-in test runner, although NUnit Test Adapter has already been updated in the mean time. I am using CodeRush test runner now and I don't have any problems.

It's probably a bug in NUnit Test Adapter.

I should also point out that SQLiteMetroTests.sln (Windows Store solution with MSTest) works fine fine for me (and always has) it's SQLite.sln (.NET framework solution with NUnit) that's causing problems.

from sqlite-net.

bogdanvarlamov avatar bogdanvarlamov commented on September 13, 2024

I have the same issue with using SQLite nuget package (SQLite.Interop.dll) with NUnit Test adapter...

The SQLite.Interop.dll file is locked by vstest.discoveryengine.x86.exe

from sqlite-net.

NAJ8ry avatar NAJ8ry commented on September 13, 2024

I have had the same problem.
Using the Process Explorer I found the process that was holding onto my SQLite3.DLL.
Using the command prompt the process can be killed with taskkill (http://technet.microsoft.com/en-us/library/bb491009.aspx).
To automate the release I added the line below into the test project's Pre-Build Event:
taskkill /IM vstest.executionengine.x86.exe /F
This is only a partial fix - since if the process is not running the killtask itself fails. Creating a batch file is a solution referencing http://stackoverflow.com/questions/162291/how-to-check-if-a-process-is-running-via-a-batch-script
My batch file reads:
tasklist /FI "IMAGENAME eq vstest.executionengine.x86.exe" 2>NUL | find /I /N "vstest.executionengine.x8">NUL
if "%ERRORLEVEL%"=="0" taskkill /IM vstest.executionengine.x86.exe /F

This works nicely. I have put the batch file name in the test projects pre-build event and I have not had the same problem again.
Hope it helps.
PS. Note the find command uses the first 25 characters of the process name.

from sqlite-net.

mayerwin avatar mayerwin commented on September 13, 2024

As per http://stackoverflow.com/a/15748825/541420 you can use the following command in "Build Events > Pre-build event commande line" to avoid a batch file and an error if the process is not running:

taskkill /F /FI "pid gt 0" /IM vstest.executionengine.x86.exe

Hope if helps.

from sqlite-net.

eng-marani avatar eng-marani commented on September 13, 2024

I have the same exact problem. IIS remain stuck because that file is locked even if all database access has been completed.
This generally indicate a reference leak on the DB usage. Killing the hosting process (IIS or IISExpress) is not a solution.
Unfortunately, tracking down these handle leaks are very very difficult. There should be an API to reset all current connections and deallocate everything in a clean way, but there isn't.

from sqlite-net.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.