Mercurial > cpython-lru_cache-weakref
annotate Tools/scripts/pickle2db.py @ 87690:66c1c9f32567 default tip
Add use_weakref option to functools.lru_cache
The use_weakref option makes lru_cache create weak references to the function
arguments when creating the cache key, which prevents them from staying in the
memory forever even after all other references to them are gone.
This is a proof of concept for http://bugs.python.org/issue19859
| author | Radomir Dopieralski <devel@sheep.art.pl> |
|---|---|
| date | Tue, 03 Dec 2013 16:02:48 +0100 |
| parents | fcfe324663a6 |
| children |
| rev | line source |
|---|---|
|
59522
fcfe324663a6
convert shebang lines: python -> python3
Benjamin Peterson <benjamin@python.org>
parents:
57145
diff
changeset
|
1 #!/usr/bin/env python3 |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
2 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
3 """ |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
4 Synopsis: %(prog)s [-h|-b|-g|-r|-a|-d] [ picklefile ] dbfile |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
5 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
6 Read the given picklefile as a series of key/value pairs and write to a new |
|
29550
4d1fa9c5cb2c
minor __doc__ string tweakage
Skip Montanaro <skip@pobox.com>
parents:
28774
diff
changeset
|
7 database. If the database already exists, any contents are deleted. The |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
8 optional flags indicate the type of the output database: |
|
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
9 |
|
47285
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
10 -a - open using dbm (open any supported format) |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
11 -b - open as bsddb btree file |
|
47285
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
12 -d - open as dbm.ndbm file |
|
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
13 -g - open as dbm.gnu file |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
14 -h - open as bsddb hash file |
|
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
15 -r - open as bsddb recno file |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
16 |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
17 The default is hash. If a pickle file is named it is opened for read |
|
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
18 access. If no pickle file is named, the pickle input is read from standard |
|
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
19 input. |
|
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
20 |
|
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
21 Note that recno databases can only contain integer keys, so you can't dump a |
| 28212 | 22 hash or btree database using db2pickle.py and reconstitute it to a recno |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
23 database with %(prog)s unless your keys are integers. |
|
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
24 |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
25 """ |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
26 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
27 import getopt |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
28 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
29 import bsddb |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
30 except ImportError: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
31 bsddb = None |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
32 try: |
|
47285
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
33 import dbm.ndbm as dbm |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
34 except ImportError: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
35 dbm = None |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
36 try: |
|
47285
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
37 import dbm.gnu as gdbm |
|
30804
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
38 except ImportError: |
|
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
39 gdbm = None |
|
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
40 try: |
|
57145
979eb1bbf6e6
Merged revisions 76156 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents:
47285
diff
changeset
|
41 import dbm.ndbm as anydbm |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
42 except ImportError: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
43 anydbm = None |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
44 import sys |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
45 try: |
|
57145
979eb1bbf6e6
Merged revisions 76156 via svnmerge from
Benjamin Peterson <benjamin@python.org>
parents:
47285
diff
changeset
|
46 import pickle as pickle |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
47 except ImportError: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
48 import pickle |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
49 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
50 prog = sys.argv[0] |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
51 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
52 def usage(): |
|
28774
c9bee11eaa8b
Whitespace normalization.
Tim Peters <tim.peters@gmail.com>
parents:
28212
diff
changeset
|
53 sys.stderr.write(__doc__ % globals()) |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
54 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
55 def main(args): |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
56 try: |
|
30804
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
57 opts, args = getopt.getopt(args, "hbrdag", |
|
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
58 ["hash", "btree", "recno", "dbm", "anydbm", |
|
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
59 "gdbm"]) |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
60 except getopt.error: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
61 usage() |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
62 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
63 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
64 if len(args) == 0 or len(args) > 2: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
65 usage() |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
66 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
67 elif len(args) == 1: |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
68 pfile = sys.stdin |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
69 dbfile = args[0] |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
70 else: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
71 try: |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
72 pfile = open(args[0], 'rb') |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
73 except IOError: |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
74 sys.stderr.write("Unable to open %s\n" % args[0]) |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
75 return 1 |
|
31613
46df08eb0839
* explain flags in doc strings
Skip Montanaro <skip@pobox.com>
parents:
30804
diff
changeset
|
76 dbfile = args[1] |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
77 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
78 dbopen = None |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
79 for opt, arg in opts: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
80 if opt in ("-h", "--hash"): |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
81 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
82 dbopen = bsddb.hashopen |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
83 except AttributeError: |
|
27640
00426c7f147d
try to avoid gross incompatibilities with earlier versions of Python
Skip Montanaro <skip@pobox.com>
parents:
27631
diff
changeset
|
84 sys.stderr.write("bsddb module unavailable.\n") |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
85 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
86 elif opt in ("-b", "--btree"): |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
87 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
88 dbopen = bsddb.btopen |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
89 except AttributeError: |
|
27640
00426c7f147d
try to avoid gross incompatibilities with earlier versions of Python
Skip Montanaro <skip@pobox.com>
parents:
27631
diff
changeset
|
90 sys.stderr.write("bsddb module unavailable.\n") |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
91 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
92 elif opt in ("-r", "--recno"): |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
93 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
94 dbopen = bsddb.rnopen |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
95 except AttributeError: |
|
27640
00426c7f147d
try to avoid gross incompatibilities with earlier versions of Python
Skip Montanaro <skip@pobox.com>
parents:
27631
diff
changeset
|
96 sys.stderr.write("bsddb module unavailable.\n") |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
97 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
98 elif opt in ("-a", "--anydbm"): |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
99 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
100 dbopen = anydbm.open |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
101 except AttributeError: |
|
47285
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
102 sys.stderr.write("dbm module unavailable.\n") |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
103 return 1 |
|
30804
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
104 elif opt in ("-g", "--gdbm"): |
|
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
105 try: |
|
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
106 dbopen = gdbm.open |
|
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
107 except AttributeError: |
|
47285
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
108 sys.stderr.write("dbm.gnu module unavailable.\n") |
|
30804
ac8c7716a85d
allow dump/load of gdbm files
Skip Montanaro <skip@pobox.com>
parents:
29550
diff
changeset
|
109 return 1 |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
110 elif opt in ("-d", "--dbm"): |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
111 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
112 dbopen = dbm.open |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
113 except AttributeError: |
|
47285
afbde360dd1a
Create the dbm package from PEP 3108. #2881.
Georg Brandl <georg@python.org>
parents:
47100
diff
changeset
|
114 sys.stderr.write("dbm.ndbm module unavailable.\n") |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
115 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
116 if dbopen is None: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
117 if bsddb is None: |
|
27640
00426c7f147d
try to avoid gross incompatibilities with earlier versions of Python
Skip Montanaro <skip@pobox.com>
parents:
27631
diff
changeset
|
118 sys.stderr.write("bsddb module unavailable - ") |
|
00426c7f147d
try to avoid gross incompatibilities with earlier versions of Python
Skip Montanaro <skip@pobox.com>
parents:
27631
diff
changeset
|
119 sys.stderr.write("must specify dbtype.\n") |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
120 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
121 else: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
122 dbopen = bsddb.hashopen |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
123 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
124 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
125 db = dbopen(dbfile, 'c') |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
126 except bsddb.error: |
|
27640
00426c7f147d
try to avoid gross incompatibilities with earlier versions of Python
Skip Montanaro <skip@pobox.com>
parents:
27631
diff
changeset
|
127 sys.stderr.write("Unable to open %s. " % dbfile) |
|
00426c7f147d
try to avoid gross incompatibilities with earlier versions of Python
Skip Montanaro <skip@pobox.com>
parents:
27631
diff
changeset
|
128 sys.stderr.write("Check for format or version mismatch.\n") |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
129 return 1 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
130 else: |
|
47100
893a4dc17a91
Ran 2to3 over scripts directory.
Georg Brandl <georg@python.org>
parents:
31613
diff
changeset
|
131 for k in list(db.keys()): |
|
27631
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
132 del db[k] |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
133 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
134 while 1: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
135 try: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
136 (key, val) = pickle.load(pfile) |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
137 except EOFError: |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
138 break |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
139 db[key] = val |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
140 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
141 db.close() |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
142 pfile.close() |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
143 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
144 return 0 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
145 |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
146 if __name__ == "__main__": |
|
7bf7dac4dc49
convert pickles generated by db2pickle.py back to database files
Skip Montanaro <skip@pobox.com>
parents:
diff
changeset
|
147 sys.exit(main(sys.argv[1:])) |
