sim: better step

On each step, find all the actions that could be done, and pick one of them
to do.

Should detect stability, but that is broken.
This commit is contained in:
Joey Hess 2024-09-20 15:21:18 -04:00
parent 31679e3e9f
commit 19b966f0fd
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
3 changed files with 74 additions and 59 deletions

View file

@ -183,8 +183,12 @@ as passed to "git annex sim" while a simulation is running.
Run the simulation forward by this many steps.
On each step of the simulation, a simulated repository is selected
at random, and a random action is performed in it.
On each step of the simulation, one file is either transferred
or dropped, according to the preferred content and other configuration.
If there are no more files that can be either transferred or dropped
according to the current configuration, a message will be displayed
to indicate that the simulation has stabilized.
* `action repo getwanted remote`

View file

@ -30,6 +30,9 @@ Planned schedule of work:
* Currently working in [[todo/proving_preferred_content_behavior]]
* bug sim step does not detect stabalization. Seems to keep getting files
that are already in a repo.
* sim: For size balanced preferred content to work, getLiveRepoSizes
needs to reflect keys that were added/dropped from the repository by
earlier stages of the sim. That is not currently done, because
@ -78,11 +81,6 @@ Planned schedule of work:
clients having direct connections to the nodes, but not the same when
there are more than 2 clients connected to the 2 gateways.
* sim: Make an action that considers every action that preferred content
allows to happen, and picks random actions to perform. When there are no
more actions that preferred content allows, the simulation has reached a
stable point and it can stop.
* sim: Detect instability. This can be done by examining the history,
if a file is added or removed from the same repository repeatedly,
there is probably instability, although it may be an instability that