Skip to content

Using too many Tilesets at once causes a crash that prevents Tilesets/Vector Data from loading #841

@DavidAPC

Description

@DavidAPC

As you know, you can use multiple Tilesets together by specifying comma separated mapIDs in the Unity inteface.This allowed a Unity map to draw features from several different datasets.

However, when I got up to 4 datasets, this stopped working. The application would run, but no Vector features would get draw. I'd also get this error multiple times:

SQLiteException: Could not open database file: \\?\C:\Users\MT_User\AppData\LocalLow\DefaultCompany\Radial Menu Test\cache\pablofinquez.cjhuozqy617dv2vo2j0q5w82z-9arq6,pablofinquez.cjh0pxmyi0v8p33mqev5h6ire-4qfll,pablofinquez.cjhvqj3yh0xdi31n13ztkk8a0-6sndr,pablofinquez.cjhum69ji00cy32li8a4hn3jx-0dkip.cache (CannotOpen) SQLite4Unity3d.SQLiteConnection..ctor (System.String databasePath, SQLiteOpenFlags openFlags, Boolean storeDateTimeAsTicks) (at Assets/Mapbox/Core/mapbox-sdk-cs/Platform/SQLite/SQLite.cs:206) Mapbox.Platform.MbTiles.MbTilesDb.openOrCreateDb (System.String dbName) (at Assets/Mapbox/Core/mapbox-sdk-cs/Platform/MbTiles/MbTiles.cs:158) Mapbox.Platform.MbTiles.MbTilesDb..ctor (System.String tileset, Nullable`1 maxTileCount) (at Assets/Mapbox/Core/mapbox-sdk-cs/Platform/MbTiles/MbTiles.cs:38) Mapbox.Platform.Cache.MbTilesCache.initializeMbTiles (System.String mapId) (at Assets/Mapbox/Core/mapbox-sdk-cs/Platform/Cache/MbTilesCache.cs:112) Mapbox.Platform.Cache.MbTilesCache.Get (System.String mapId, CanonicalTileId tileId) (at Assets/Mapbox/Core/mapbox-sdk-cs/Platform/Cache/MbTilesCache.cs:144) Mapbox.Platform.Cache.CachingWebFileSource.Request (System.String uri, System.Action`1 callback, Int32 timeout, CanonicalTileId tileId, System.String mapId) (at Assets/Mapbox/Core/mapbox-sdk-cs/Platform/Cache/CachingWebFileSource.cs:122) Mapbox.Unity.MapboxAccess.Request (System.String url, System.Action`1 callback, Int32 timeout, CanonicalTileId tileId, System.String mapId) (at Assets/Mapbox/Unity/MapboxAccess.cs:247) Mapbox.Map.Tile.Initialize (IFileSource fileSource, CanonicalTileId canonicalTileId, System.String mapId, System.Action p) (at Assets/Mapbox/Core/mapbox-sdk-cs/Map/Tile.cs:144) Mapbox.Unity.MeshGeneration.Factories.VectorTileFactory.OnRegistered (Mapbox.Unity.MeshGeneration.Data.UnityTile tile) (at Assets/Mapbox/Unity/MeshGeneration/Factories/VectorTileFactory.cs:99) Mapbox.Unity.MeshGeneration.Factories.AbstractTileFactory.Register (Mapbox.Unity.MeshGeneration.Data.UnityTile tile) (at Assets/Mapbox/Unity/MeshGeneration/Factories/AbstractTileFactory.cs:101) Mapbox.Unity.Map.AbstractMapVisualizer.LoadTile (UnwrappedTileId tileId) (at Assets/Mapbox/Unity/Map/AbstractMapVisualizer.cs:202) Mapbox.Unity.Map.AbstractMap.TileProvider_OnTileAdded (UnwrappedTileId tileId) (at Assets/Mapbox/Unity/Map/AbstractMap.cs:552) Mapbox.Unity.Map.AbstractTileProvider.AddTile (UnwrappedTileId tile) (at Assets/Mapbox/Unity/Map/AbstractTileProvider.cs:43) Mapbox.Unity.Map.QuadTreeTileProvider.Update () (at Assets/Mapbox/Unity/Map/QuadTreeTileProvider.cs:71)

All Tilesets worked on their own, any combination of 3 Tilesets would work, but try all of them and this crash happened.

A clue why this is happening is that the filepath: "C:\Users\MT_User\AppData\LocalLow\DefaultCompany\Radial Menu Test\cache\pablofinquez.cjhuozqy617dv2vo2j0q5w82z-9arq6,pablofinquez.cjh0pxmyi0v8p33mqev5h6ire-4qfll,pablofinquez.cjhvqj3yh0xdi31n13ztkk8a0-6sndr,pablofinquez.cjhum69ji00cy32li8a4hn3jx-0dkip.cache" is 257 characters long. I recall something about problems with filepaths that are more than 255 characters long.

I any event, this project will likely involve more than 4 tilesets, so any suggestions on how to avoid this problem would be appreciated. I'd prefer not to have to squish everything down into a single Tileset for reasons I've outlined in #830 , though I'm sure it would work.

Metadata

Metadata

Assignees

Labels

.Net 4.6issues exclusively related to .NET 4.6 runtimeWindowsissues related to Windows platformsupport

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions