flok 0.0.81 → 0.0.82
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/docs/services/vm.md +12 -3
- data/lib/flok/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ebf963c82063ec89074d43114c4416bcc3505df8
|
|
4
|
+
data.tar.gz: ece62f398cf5e92ce976597f1fee070678bf13d4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5b3367ebb243879208147f3b944558fb880e9774c00338e390b0d947cc41ca088a1638ca3db3915deab288bc2477b7955ad39a8095e66ce4942c71f54a2a98e1
|
|
7
|
+
data.tar.gz: e85b5607da669fcac1a3e795541ca7b37cf9f59295c187989bd367b2db26d2701dfcf69b28bbc22c82ffad4114d5e87c95f6ec552da50c5b48f489d7e66a9841
|
data/docs/services/vm.md
CHANGED
|
@@ -171,15 +171,24 @@ The pager synchronization daemon is embodied in the function called `vm_pg_sync_
|
|
|
171
171
|
during a sync call for disk reads or the synchronous `read_sync` request. The format for each element in the array is `{"page_id": [bp1, bp2], ...}`
|
|
172
172
|
* `vm_pager_waiting_read` - A hash that maps `[ns][page_id]` into a hash that represents a the page that was trying to be written.
|
|
173
173
|
needed to be read before notifying the pager. Multiple write attempts on the same page before the disk response will undefined behavior.
|
|
174
|
-
* `
|
|
175
|
-
* `vm_unsynced` - A hash that maps `
|
|
174
|
+
* `vm_unsynced`
|
|
175
|
+
* `vm_unsynced` - A hash that maps `vm_unsynced[ns][page._id]` to an integer that is either `0` or `1`. the vm sync daemon reads over this
|
|
176
176
|
queue and `0` means that it was just requested via `vm_pg_mark_needs_sync` and needs to be incremented to `1`. `1` means that the vm sync
|
|
177
177
|
daemon must contact the pager for the `sync` action. This will happend until the pager calls `vm_pg_unmark_needs_sync` which will remove it
|
|
178
|
-
from this hash
|
|
178
|
+
from this hash.
|
|
179
|
+
* `vm_unsynced_is_dirty` - A boolean value that indicates whether the `vm_unsynced` needs to be paged-out to disk.
|
|
180
|
+
* `vm_unsynced_paged_in` - A boolean that indicates whether the `vm_unsynced` needs to be paged in from disk (used once on wakeup)
|
|
179
181
|
|
|
180
182
|
##Helper Methods
|
|
181
183
|
|
|
182
184
|
###Functional
|
|
185
|
+
####Periodically called (daemons)
|
|
186
|
+
* `vm_pg_sync_wakeup` - for all pages in `vm_unsynced`, the pagers are notified of a `sync` request
|
|
187
|
+
* `vm_pg_sync_pagein` - If has not happend yet, the `vm_unsynced` table is loaded from disk via the the special namespace `__reserved__` and key
|
|
188
|
+
`vm_unsynced`
|
|
189
|
+
* `vm_pg_sync_pageout` - If the `vm_unsynced_is_dirty` is set, the `vm_unsynced` is written out to special namespace `__reserved__` and key
|
|
190
|
+
`vm_unsynced`
|
|
191
|
+
|
|
183
192
|
####Page modification (assuming inputs are modifiable)
|
|
184
193
|
* **Generic Page**
|
|
185
194
|
* `vm_create_page(id)` - **this does not write anything to memory. It has no side effects except returning a hash**.
|
data/lib/flok/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: flok
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.82
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- seo
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-08-
|
|
11
|
+
date: 2015-08-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: execjs
|