DAVFoundation / missioncontrol

🛰 Controls and orchestrates missions between vehicles and DAV users
MIT License
181 stars 156 forks source link

Do not store bids in memory indefinitely #89

Closed TalAter closed 6 years ago

TalAter commented 6 years ago

Thank you for your help :heart:

What is this project?

DAV (Decentralized Autonomous Vehicles) is a new foundation working to build an open-source infrastructure for autonomous vehicles (cars, drones, trucks, robots, and all the service providers around them) to communicate and transact with each other over blockchain.

The specific project you are looking at is Mission Control. It is the brain in charge of orchestrating missions between DAV users and autonomous vehicles.

How you can help

Mission Control comes with a built in simulation environment which generates and controls simulated vehicles, allowing developers to start developing without investing in costly hardware first.

One of the things the simulator does is create simulated bids from drones for delivery missions.

Once created, those simulated bids remain indefinitely in memory. In a real environment, those bids would only be valid for a few minutes at most.

Once we have many developers from around the world experimenting with the simulation environment, more and more bids will be created and kept in memory and never deleted.

What you can do

We need to add a TTL (Time To Live) expiration to the bids stored in Redis so that they are deleted automatically after 1 hour. And we need to reset that TTL, setting it to 1 hour again when those bids are accessed.

These bids are created in /server/store/bids.js, and the EXPIRE needs to be set when calling saveBid(), getBid(), and getBidsForRequest()

Contributing to Mission Control

TalAter commented 6 years ago

Claimed by @timigod