[Zodb-checkins] SVN: ZODB/branches/3.8/src/ZODB/ Fixed more windows issues
Jim Fulton
jim at zope.com
Fri Sep 19 09:52:03 EDT 2008
Log message for revision 91267:
Fixed more windows issues
Changed:
U ZODB/branches/3.8/src/ZODB/blob.py
U ZODB/branches/3.8/src/ZODB/scripts/migrateblobs.py
U ZODB/branches/3.8/src/ZODB/tests/blob_layout.txt
-=-
Modified: ZODB/branches/3.8/src/ZODB/blob.py
===================================================================
--- ZODB/branches/3.8/src/ZODB/blob.py 2008-09-19 13:28:31 UTC (rev 91266)
+++ ZODB/branches/3.8/src/ZODB/blob.py 2008-09-19 13:52:02 UTC (rev 91267)
@@ -325,9 +325,8 @@
os.path.join(self.base_dir, LAYOUT_MARKER), 'wb')
layout_marker.write(self.layout_name)
else:
- layout_marker = open(
- os.path.join(self.base_dir, LAYOUT_MARKER), 'rb')
- layout = layout_marker.read().strip()
+ layout = open(os.path.join(self.base_dir, LAYOUT_MARKER), 'rb'
+ ).read().strip()
if layout != self.layout_name:
raise ValueError(
"Directory layout `%s` selected for blob directory %s, but "
Modified: ZODB/branches/3.8/src/ZODB/scripts/migrateblobs.py
===================================================================
--- ZODB/branches/3.8/src/ZODB/scripts/migrateblobs.py 2008-09-19 13:28:31 UTC (rev 91266)
+++ ZODB/branches/3.8/src/ZODB/scripts/migrateblobs.py 2008-09-19 13:52:02 UTC (rev 91267)
@@ -17,6 +17,7 @@
import logging
import optparse
import os
+import shutil
from ZODB.blob import FilesystemHelper, rename_or_copy_blob
from ZODB.utils import cp, oid_repr
@@ -28,6 +29,12 @@
except OSError:
shutil.copy(f1, f2)
+# Check if we actually have link
+try:
+ os.link
+except AttributeError:
+ link_or_copy = shutil.copy
+
def migrate(source, dest, layout):
source_fsh = FilesystemHelper(source)
Modified: ZODB/branches/3.8/src/ZODB/tests/blob_layout.txt
===================================================================
--- ZODB/branches/3.8/src/ZODB/tests/blob_layout.txt 2008-09-19 13:28:31 UTC (rev 91266)
+++ ZODB/branches/3.8/src/ZODB/tests/blob_layout.txt 2008-09-19 13:52:02 UTC (rev 91267)
@@ -29,9 +29,12 @@
>>> bushy.oid_to_path('\x00\x00\x00\x00\x00\x00\x00\x01')
'0x00/0x00/0x00/0x00/0x00/0x00/0x00/0x01'
->>> bushy.path_to_oid('0x01/0x00/0x00/0x00/0x00/0x00/0x00/0x00')
+>>> import os
+>>> bushy.path_to_oid(os.path.join(
+... '0x01', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00'))
'\x01\x00\x00\x00\x00\x00\x00\x00'
->>> bushy.path_to_oid('0xff/0x00/0x00/0x00/0x00/0x00/0x00/0x00')
+>>> bushy.path_to_oid(os.path.join(
+... '0xff', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00'))
'\xff\x00\x00\x00\x00\x00\x00\x00'
Paths that do not represent an OID will cause a ValueError:
@@ -142,8 +145,8 @@
'lawn'
>>> fsh.create() # doctest: +ELLIPSIS
Traceback (most recent call last):
-ValueError: Directory layout `lawn` selected for blob directory /.../blobs/, but marker found for layout `bushy`
->>> shutil.rmtree(blobs)
+ValueError: Directory layout `lawn` selected for blob directory .../blobs/, but marker found for layout `bushy`
+>>> rmtree(blobs)
This function interacts with the automatic detection in the way, that an
unmarked directory will be marked the first time when it is auto-guessed and
@@ -163,10 +166,11 @@
'lawn'
>>> blob_storage = BlobStorage(blobs, base_storage, layout='bushy') # doctest: +ELLIPSIS
Traceback (most recent call last):
-ValueError: Directory layout `bushy` selected for blob directory /.../blobs/, but marker found for layout `lawn`
+ValueError: Directory layout `bushy` selected for blob directory .../blobs/, but marker found for layout `lawn`
->>> shutil.rmtree(d)
+>>> base_storage.close()
+>>> rmtree(d)
Migrating between directory layouts
@@ -206,7 +210,7 @@
>>> bushy = os.path.join(d, 'bushy')
>>> migrate(old, bushy, 'bushy') # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
-Migrating blob data from `/.../old` (lawn) to `/.../bushy` (bushy)
+Migrating blob data from `.../old` (lawn) to `.../bushy` (bushy)
OID: 0x0a - 2 files
OID: 0x1b7a - 2 files
OID: 0x1b7f - 2 files
@@ -248,7 +252,7 @@
>>> lawn = os.path.join(d, 'lawn')
>>> migrate(bushy, lawn, 'lawn')
-Migrating blob data from `/.../bushy` (bushy) to `/.../lawn` (lawn)
+Migrating blob data from `.../bushy` (bushy) to `.../lawn` (lawn)
OID: 0x0a - 2 files
OID: 0x1b7a - 2 files
OID: 0x1b7f - 2 files
@@ -278,4 +282,4 @@
bushy/0x00/0x00/0x00/0x00/0x00/0x00/0x1b/0x7a/foo5 --> lawn/0x1b7a/foo5
bushy/0x00/0x00/0x00/0x00/0x00/0x00/0x1b/0x7a/foo6 --> lawn/0x1b7a/foo6
->>> shutil.rmtree(d)
+>>> rmtree(d)
More information about the Zodb-checkins
mailing list