Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Design clear caching protocol #226

Open
delgadom opened this issue Mar 21, 2017 · 3 comments
Open

Design clear caching protocol #226

delgadom opened this issue Mar 21, 2017 · 3 comments
Assignees
Milestone

Comments

@delgadom
Copy link
Member

This should be implemented in the docs/examples as a proposed API.

The cache protocol must clearly define:

  • possible types of cache configurations
  • how these configurations are specified (config file, python, CLI)
  • what is cached on write for each cache configuration
  • what is cached on read for each cache configuration
  • any modifications that can be made to the defaults using method flags/CLI args

In addition, it should clearly articulate how users are expected to interact with the cache in each of our main uses cases (big servers, e.g. Sacagawea, and personal/OSDC machines) including cache management.

@delgadom delgadom added this to the 0.7.1 milestone Mar 21, 2017
@delgadom delgadom modified the milestones: 0.7.1, 1.0, 0.8.0 Mar 21, 2017
@delgadom
Copy link
Member Author

delgadom commented Mar 21, 2017

@delgadom
Copy link
Member Author

@jgerardsimcock how do you feel about the proposal in the google doc? should this get closed and move to developing tests?

@delgadom
Copy link
Member Author

The api design in cache_policies is, I think, good.

As for work on this issue, there is some work in cache_by_default that may be informative, but this branch should by and large be discarded. All of the work is geared toward the previous system. Most of these changes should be done through an overhaul of data_file, whereby caching is done in data_file based on the value of a cache_policy parameter (string or object? not sure) that is passed into file operation calls. This will make this module much more clear and testable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant