1

我正在使用视图通过将旧内容移动到另一个文件夹来存档旧内容。(目录搜索超过 N 个月前的 enddate,将 id 传递给以下命令:

target.manage_pasteObjects( source.manage_cutObjects(idsToArchive) )

一两年前,移动大约 800 个甚至更多的物体是没有问题的。今天我需要将目录搜索限制在 80 项左右,否则我会得到一个

    Module OFS.CopySupport, line 193, in manage_pasteObjects
CopyError: 

The data in the clipboard could not be read, possibly due to cookie data being truncated by your web browser. Try copying fewer objects.

运行 plone 4.1.6 / Zope2-2.13.15。

我已经尝试停用 beaker-session-datamanager (仍然是同样的问题)

4

1 回答 1

4

您安装了最新的 Plone 修补程序20130618。它包括一个 DDOS 预防措施,将__cpcookie 数据的大小限制为 8kb(解压缩)。

未来的 Zope 版本也将包括此修复程序。

要临时解决此问题,您唯一的选择是增加默认的最大大小。这样做允许其他线程也使用更大的 cookie,直到您恢复默认值:

from OFS.CopySupport import _cb_decode

_default_maxsize = _cb_decode.func_defaults[0]

def _increase_maxsize(newsize):
    # Patch the maxsize default
    _cb_decode.func_defaults = (newsize,)

def _restore_maxsize(newsize):
    # Patch the maxsize default
    _cb_decode.func_defaults = (_default_maxsize,)

cookie 数据几乎完全由作为转储的对象路径(作为元组的绝对路径)组成marshall,您必须从中估计合适的最大大小。

于 2013-07-14T11:35:29.043 回答