Comments (2)
Currently the endpoint-hook.js
is about adding information to the permanent seeder, and never removes information. This could mean that if the endpoint goes from 10 to 1 module, the permanent-seeder will still include the original 10. For example if at t1
the endpoint gives as result:
module01
module02
module03
module04
module05
module06
module07
module08
module09
module10
and at t2
module04
the permanent seeder would delete all except module04
at t2
. This would need to have some failsafes to make sure that it only does so when the request completes properly, to prevent accidental deletion of modules.
What would be a good strategy to address this? The endpoint might give a 200
code but with improper data, and that shouldn't delete the information. Maybe we could do a staged deletion, where modules get slated for deletion when it doesn't return at t2
and then is actually deleted 10 days later, iff at that time it is still removed?
from permanent-seeder.
@dpaez and I just had a good chat about this. This is a reportback of that conversation.
We are inclined to go for a new route that the permanent seeder consumes that has the deletion keys (if the installer so chooses; delete-route
). That route is consumed at the same time as the list of keys to add to the permanent seeder (add-route
). There are several scenarios that can occur as a result, with their respective outcomes sketched out below in a logic table (thumbs up is key present in that condition, thumbs down is key not present):
add-route |
delete-route |
Seed |
---|---|---|
This is the minimal logic needed to implement deletion from the permanent seeder in a controlled way, as my previous proposal required additional logic about marking for deletion.
from permanent-seeder.
Related Issues (20)
- Public URL strategy
- Replication status 0% upon full replication? HOT 3
- footer hard to reach with many modules HOT 1
- HTTPS integration? HOT 1
- Update `api/raw/:key` recorded events HOT 1
- machine stats not displaying HOT 2
- Route documentation
- Update: connectivity method is deprecated HOT 1
- task release: update tag action HOT 1
- Fix: GDPR / HIPAA compliance HOT 1
- release: re-visit release process
- Clipboard breaks dashboard HOT 1
- Research: checkout issue
- Upgrade dependency stack HOT 1
- key-remove: call unseed
- always tries to connect to localhost:3001 HOT 21
- Bad size
- stop command fails HOT 2
- socket.io connection refused HOT 5
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 permanent-seeder.