Comments (13)
Thanks for the issue, Lapis should definitely have this feature!
from lapis.
Yeah, having a way to read data without imposing a session lock would be great!
from lapis.
Maybe it runs the migration code locally but doesn't save that data back?
from lapis.
I've been thinking about this and I'm not sure how it should work with migrations. Would you expect this to return API to return data with an outdated migration version?
from lapis.
Either way feels like it's a 'gotcha' territory.
from lapis.
Maybe it runs the migration code locally but doesn't save that data back?
I think applying a temporary unsaved migration is a necessary compromise for the proposed read-only mode.
I certainly don't have a use case for reading data that is out of date, so I think the natural step there is just running whatever migration is needed to bring the data up to date.
from lapis.
Even if we did run the migration, you could have a situation where a server reads a document with a migration version higher than its own.
from lapis.
That could still happen on it's normal write mode though? So I don't think it's in the scope of this issue?
from lapis.
If you load a document that has a higher migration version than the servers, it will error and not load the document. We could do that here as well. I just don't know the specific use-cases people have for a read-only mode, so I don't know if that's acceptable.
from lapis.
I think it makes the most sense to return the data migrated to the version that the server calling it expects.
from lapis.
I think it makes the most sense to return the data migrated to the version that the server calling it expects.
I agree, but if it is passed the server's migration version, you would expect it to error then?
from lapis.
I think it makes the most sense to return the data migrated to the version that the server calling it expects.
I agree, but if it is passed the server's migration version, you would expect it to error then?
Yes
from lapis.
Resolved with #59.
from lapis.
Related Issues (18)
- Create example
- Choose better defaults for `loadAttempts` and `loadRetryDelay`
- Throttle queue should process requests on different keys at the same time
- Support for passing user IDs for GDPR removal HOT 4
- Add callback to update document when it closes HOT 1
- When lapis fails to load a player's profile, it does not release its session lock
- Add developer products example
- attempt to index nil with 'GetUserIds' HOT 4
- Documents should not be able to load after `game:BindToClose`
- Add `beforeLoad` callback
- Add option to disable immutability
- Document 30 minute lock expire
- Add warning when throttle queue becomes too large
- Test accuracy of `DateTime.now()` to see if `LOCK_EXPIRE` can be reduced
- Remove lock from documents that fail to close
- Lapis cannot be used in Studio Widget with Team Create enabled HOT 3
- Support multi-server access
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lapis.