Skip to content
This repository has been archived by the owner on Aug 8, 2023. It is now read-only.

Merging offline DB created with different styles throws an error. #13282

Closed
fabian-guerra opened this issue Nov 6, 2018 · 5 comments
Closed
Labels
archived Archived because of inactivity bug Core The cross-platform C++ core, aka mbgl needs reproduction offline

Comments

@fabian-guerra
Copy link
Contributor

When an offline region created with style A is merged into an app that uses style B it throws the following error:

[DEBUG] {}[Database](1): BUG IN CLIENT OF libsqlite3.dylib: database integrity compromised by API violation: vnode unlinked while in use:

/cc @asheemmamoowala

@fabian-guerra fabian-guerra added bug Core The cross-platform C++ core, aka mbgl labels Nov 6, 2018
@asheemmamoowala
Copy link
Contributor

@fabian-guerra I used a locally created test DB (bounds around London in streets style). with the iOS demo app and was not able to reproduce this issue.

Code is @ https://github.com/mapbox/mapbox-gl-native/tree/investigate-13282
Steps I Used:

  • Launch app in iOS Simulator (i used iPhone 8 image)
  • Change to raster style
  • Select Style building extrusions - which is hijacked to merge the test database.

Note: I changed the pack metadata decoding because it was created with mbgl-offline and does not contain an NSKeyedArchiver-based blob.

@fabian-guerra
Copy link
Contributor Author

@asheemmamoowala perhaps this is the problem:

Note: I changed the pack metadata decoding because it was created with mbgl-offline and does not contain an NSKeyedArchiver-based blob.

I made a DB using mbgl-offline and I'm seeing this issue.

@asheemmamoowala
Copy link
Contributor

So it turns out I didn't push my changes to the investigate branch ref'ed above. In any case, without the changes, I didn't get a crash in the sql code on macOS. the crash was in the macOS [OfflinePackNameValueTransformer transformedValue:(NSData *)context].

That should be an easy fix, but needs confirmation that it does get rid of the crash.

@fabian-guerra
Copy link
Contributor Author

I don't get a crash I get the above message in the console.

I'm attaching the file I used to test.
tatl.db.zip

@stale stale bot added the archived Archived because of inactivity label Jun 18, 2019
@stale
Copy link

stale bot commented Jun 18, 2019

This issue has been automatically detected as stale because it has not had recent activity and will be archived. Thank you for your contributions.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
archived Archived because of inactivity bug Core The cross-platform C++ core, aka mbgl needs reproduction offline
Projects
None yet
Development

No branches or pull requests

2 participants