Commit e926e154 authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent cdb8ff24
......@@ -52,21 +52,6 @@ from wendelin.wcfs.internal import xbtree
from wendelin.bigfile.file_zodb import ZBlk
from zodbtools.util import storageFromURL
# init initializes ...
@func
def init(zstor):
db = DB(zstor); defer(db.close)
zconn = db.open(); defer(zconn.close)
root = zconn.root()
# valdict is {} for values
# {} v -> ZBlk(v)
valdict = root.setdefault('treedelta/values', {})
for v in b'abcdefghi':
valdict[v] = ZBlk(v)
transaction.commit()
# kvEncode encodes key->value maping into text.
# e.g. {1:'a', 2:'b'} -> '1:a,2:b'
......@@ -99,7 +84,15 @@ def treedeltaGenAllStructs(zstor, kv1, kv2, n):
zconn = db.open(); defer(zconn.close)
root = zconn.root()
valdict = root['treedelta/values']
# root['treedelta/values'] = {} v -> ZBlk(v)
valdict = root.setdefault('treedelta/values', {})
for v in b'abcdefghi':
# XXX don't ovewrite if already set?
zblk = ZBlk()
zblk.setblkdata(v)
valdict[v] = zblk
transaction.commit()
# vdecode decodes value text into value object, e.g. 'a' -> ZBlk(a)
def vdecode(vtxt): # -> vobj
return valdict[vtxt]
......@@ -113,11 +106,12 @@ def treedeltaGenAllStructs(zstor, kv1, kv2, n):
@func
def main():
if len(sys.argv) != 5:
print("Usage: %s <n> <zurl> <kv1> <kv2>" % sys.argv[0], file=sys.stderr)
print("Usage: %s <zurl> <n> <kv1> <kv2>" % sys.argv[0], file=sys.stderr)
sys.exit(1)
n = int(sys.argv[1])
zurl, kv1, kv2 = sys.argv[2:]
zurl = sys.argv[1]
n = int(sys.argv[2])
kv1, kv2 = sys.argv[3:]
zstor = storageFromURL(zurl)
defer(zstor.close)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment