Plone升级3.3.5至Plone 4.1.2

发布于 2024-12-19 17:34:03 字数 2331 浏览 1 评论 0原文

我正在尝试将 Plone 站点从 3.3.5 升级到 Plone 4.1.2。我安装了 4.1.2 的干净副本,并尝试将 Data.fs 复制到 4.1.2。我必须删除我的会员文件夹,因为它是不再支持的 LargePloneFolder 类型。在 32 位虚拟机上,这工作得很好。但是,我在 64 位虚拟机上遇到了错误。在 32 位机器上从 Plone 3.3.5(同一台机器)复制 Data.fs 或从 Plone 4.1.2 复制 Data.fs 会导致相同的错误。

堆栈跟踪:

Iz@bigBox# bin/zeoserver fg

/usr/local/Plone/zeocluster/parts/zeoserver/bin/runzeo
Traceback (most recent call last):

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 405, in <module>
    main()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 402, in main
    s.main()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 158, in main
    self.open_storages()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 207, in open_storages
    self.storages[opener.name] = opener.open()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/config.py", line 177, in open
    return FileStorage(config.path, **options)

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/FileStorage.py", line 185, in __init__
    read_only=read_only,

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/FileStorage.py", line 1554, in read_index
    h = fmt._read_data_header(pos)

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/format.py", line 150, in _read_data_header
    h = DataHeaderFromString(s)

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/format.py", line 236, in DataHeaderFromString
    return DataHeader(*struct.unpack(DATA_HDR, s))

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/format.py", line 246, in __init__

    "Non-zero version length. Versions aren't supported.")
ValueError: Non-zero version length. Versions aren't supported.

Python 版本:2.6 随 Plone 4.1.2 统一安装程序一起提供

我也尝试打包数据库。在 Plone 3.3.5 上使用 fsrecover.py 并使用图形界面。但这也无济于事。这很奇怪,因为我在 32 位安装中绝对没有出现任何错误,并且 Data.fs 的迁移工作得很好。

我使用 cp 命令复制数据库,并使用 -p 选项保留所有权限,该选项在 32 位 VM 上运行良好。

I am trying to upgrade a Plone site from 3.3.5 to Plone 4.1.2. I installed a clean copy of 4.1.2 and tried to copy the Data.fs to 4.1.2. I had to delete my members folder as it was of the type LargePloneFolder which is not supported anymore. On a 32 bit virtual machine, this worked just fine. However, I ran into errors on my 64bit virtual machine. Copying the Data.fs from Plone 3.3.5 (same machine) or the Data.fs from Plone 4.1.2 on the 32 bit machine resulted in the same error.

Stack Trace:

Iz@bigBox# bin/zeoserver fg

/usr/local/Plone/zeocluster/parts/zeoserver/bin/runzeo
Traceback (most recent call last):

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 405, in <module>
    main()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 402, in main
    s.main()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 158, in main
    self.open_storages()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 207, in open_storages
    self.storages[opener.name] = opener.open()

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/config.py", line 177, in open
    return FileStorage(config.path, **options)

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/FileStorage.py", line 185, in __init__
    read_only=read_only,

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/FileStorage.py", line 1554, in read_index
    h = fmt._read_data_header(pos)

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/format.py", line 150, in _read_data_header
    h = DataHeaderFromString(s)

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/format.py", line 236, in DataHeaderFromString
    return DataHeader(*struct.unpack(DATA_HDR, s))

  File "/usr/local/Plone/buildout-cache/eggs/ZODB3-3.10.3-py2.6-linux-x86_64.egg/ZODB/FileStorage/format.py", line 246, in __init__

    "Non-zero version length. Versions aren't supported.")
ValueError: Non-zero version length. Versions aren't supported.

Python Version: 2.6 shipped with Plone 4.1.2 Unified Installer

I tried to pack the db as well. using fsrecover.py on Plone 3.3.5 and using the graphics interface as well. But that does not help either. This is strange because I get absolutely no errors on my 32 bit installation and migration of Data.fs worked just fine.

I copy the db with the cp command preserving all the permissions with -p option which works fine on the 32 bit VM.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

岁月无声 2024-12-26 17:34:03

在尝试迁移之前,打包您的数据库和/或尝试删除正在运行的 Plone 3.3.x 安装中的 Zope2 /Control_Panel 中的任何旧“ZODB 版本”。或者尝试对整个 Plone 站点进行 ZEXP 导出,并将其导入到全新的 3.3.5 安装中,然后再尝试进行 4.x 迁移。新版本的 ZODB 不支持“版本”(长时间运行的事务),并且已被弃用至少几年。

请参阅此线程:
https://mail.zope.org/pipermail/zodb-dev /2010年9月/013620.html

Pack your database and/or try to remove any old "ZODB Versions" in the Zope2 /Control_Panel inside your running Plone 3.3.x install before attempting a migration. Or try doing a ZEXP export of your entire Plone site and import it into a clean 3.3.5 install before attempting to do a 4.x migration. "Versions" (long-running transactions) are not supported in newer versions of ZODB and have been deprecated for at least a few years now.

See this thread:
https://mail.zope.org/pipermail/zodb-dev/2010-September/013620.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文