1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-02-01 19:45:35 +00:00
openmw/apps/openmw_test_suite/detournavigator
elsid a75c7c49f0
Disable writes to navmeshdb on database is locked error
Simultaneously writing to sqlite3 database is not possible. Process exclusively
locks the database for this. Another process will fail to perform any request
when database is locked. Alternatively it can wait. Handling this situation
properly requires complexity that is not really needed. Users are not expected
to run multiple openmw processes simultaneously using the same navmeshdb.

Before this change running multiple openmw processes using the same navmeshdb
can lead to a crash when first transaction fails to start because there is
exception thrown and not catched.

Remove use of explicit transactions from DbWorker. Handling all possible
transaction states due to different errors brings unnecessary complexity.
Initially they were introduced to increase time between flushes to disk. This
makes sense for navmeshtool because of massive number of writes but for the
engine this is not an issue.
2022-05-09 22:54:46 +02:00
..
asyncnavmeshupdater.cpp Disable writes to navmeshdb on database is locked error 2022-05-09 22:54:46 +02:00
generate.hpp Add a binary to generate navmesh from content files 2021-12-11 00:21:56 +01:00
gettilespositions.cpp Remove unused z coordinate 2022-02-03 21:43:53 +01:00
navigator.cpp Merge branch 'navmeshdb_max_file_size' into 'master' 2022-03-27 09:07:56 +00:00
navmeshdb.cpp Limit max navmeshdb file size 2022-03-18 19:08:46 +01:00
navmeshtilescache.cpp Write generated navmesh to navmeshdb 2021-12-11 00:22:04 +01:00
operators.hpp Cull navmesh objects by scene bounds 2022-02-03 22:09:37 +01:00
recastmeshbuilder.cpp move most of the files from esm to esm3, keep common code in esm; this is make space for a future with esm4 2022-01-23 17:04:48 +01:00
recastmeshobject.cpp Store mesh source data in recast mesh 2021-12-10 23:55:02 +01:00
settings.hpp Write generated navmesh to navmeshdb 2021-12-11 00:22:04 +01:00
settingsutils.cpp Split navigator settings into subtypes 2021-12-10 23:55:03 +01:00
tilecachedrecastmeshmanager.cpp Cull navmesh objects by scene bounds 2022-02-03 22:09:37 +01:00