Giter VIP home page Giter VIP logo

Comments (4)

AEFeinstein avatar AEFeinstein commented on September 6, 2024 1

Yeah, this has gotten worse lately. Way long ago othe database update would happen in the foreground, which was intrusive but clear. At some point I switched it to a background which was both quieter and faster but would would have times where concurrent access wasn't allowed. Patches were small (a few sets at most) and not very frequent (whenever a new set was added).

Maintaining my own scraper got to be too onerous, so I switched to using MTGJSON. The upside was much higher quality data, but the downside was much more frequent (weekly) and larger changes. This made the background update service problem much more visible.

Familiar uses Android's SQLite database, and I do not believe there is a way to copy the whole database, update the copy, and then swap it in when done. If you know how to do this, please fork Familiar and have at it! But for real, I don't have a ton of time for Familiar these days and will take any help I can get.

Another option I've considered is to provide whole database updates rather than patches. These would be much larger to download (~20mb) but would swap in real fast. I used to care very much about not using too much data, but I could have this only download over wifi.

The final thought is to have a foreground warning that the database is updating, back like the real old days.

from mtg-familiar.

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.