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

Maintain comms vat state in vatstore instead of memory #2852

Closed
FUDCo opened this issue Apr 10, 2021 · 1 comment
Closed

Maintain comms vat state in vatstore instead of memory #2852

FUDCo opened this issue Apr 10, 2021 · 1 comment
Assignees
Labels
enhancement New feature or request SwingSet package: SwingSet

Comments

@FUDCo
Copy link
Contributor

FUDCo commented Apr 10, 2021

This is a follow-on to #2013

What is the Problem Being Solved?

Comms vat memory fills up in proportion to message traffic and the number of remote connections that have been active during its lifetime, so memory use can grow without bound. All state should be kept on disk so that active memory only reflects active use and the memory image size stays constant. (Since this stuff will still consume disk space, eventually there should be measures taken to clean up of old stuff that is no longer used, such as connections to dead vats; this would be part of the larger SwingSet garbage collection problem, but that is not this task.)

Description of the Design

Maintain all working state in the vatstore using essentially the same pattern that the kernel uses for keeping its state in the kernel DB.

Security Considerations

No new ones that I can think of.

Test Plan

The existing comms vat tests should be sufficient to capture tests for correctness. Our ongoing measurement and monitoring of the memory footprint of vats running our economy should help us gauge if this is addressing the comms vat portion of our ongoing memory issues (and if these measurements don't tell us enough to know then they should be augmented so that they do).

@FUDCo FUDCo added enhancement New feature or request SwingSet package: SwingSet Beta labels Apr 10, 2021
@FUDCo FUDCo self-assigned this Apr 10, 2021
@FUDCo
Copy link
Contributor Author

FUDCo commented Apr 13, 2021

Closed by #2856

@FUDCo FUDCo closed this as completed Apr 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request SwingSet package: SwingSet
Projects
None yet
Development

No branches or pull requests

1 participant