本部分列出了 Calendar Server 6.3 发行时已知的较为重要的问题:
目前知道有以下限制:
如果使用高可用性功能(使用 Calendar Server HA 软件包 SUNWcsics),则在从 Calendar Server 的旧版本升级到 Calendar Server 6.3 版后,需要执行以下解决方法来避免出现问题 6560681。
解决方法:
手动删除 Calendar Server 6.3 附带的 SUNWscics 软件包。
使用 pkgadd 添加与 Java Enterprise System 软件捆绑的 SUNWscics 软件包。
使用前端和后端服务器部署 Calendar Server 时(要求使用 DWP 协议),配置程序将要求您添加后端服务器的主机名。如果配置程序将此值存储在 ics.conf 参数 caldb.dwp.server.hostname.ip 中,则其将存储为 IP 地址(而非本应存储在该处的全限定主机名)。这意味着系统将无法找到后端服务器。
解决方法:将 IP 地址替换为全限定后端服务器主机名。通过编辑 ics.conf 文件(文本文件)即可完成此操作。
可以在《Sun Java System Calendar Server 6.3 Administration Guide》中的第 5 章 “Configuring Calendar Database Distribution Across Multiple Machines in Calendar Server Version 6.3”中找到有关哪些值可用于此处,以及用于配置前端和后端服务器的其他参数的正确说明。
本发行说明的以下部分报告了此问题(问题号为 6542989):Calendar Server 6.3 中已报告的问题。
在 Linux 操作系统中,升级到 Calendar Server 6.3 之后,运行 start-cal 将在 http.log 文件中出现错误消息:
cshttpd[2984]: General Error: caldb: caldb_pvt_isLocalUrl: hostname of hostname.xyz.com is not resolvable. Please check that hostname is correct and that hostname resolver is correct.
同样,在尝试登录后,会给出以下错误消息:
Backend Host Unresolvable Please try again
修复:此问题已在 Calendar Server 6.3 Update 1 中修复,修补程序编号 121658-17。
此问题与下一部分中编号为 6516438 的问题相同:Calendar Server 6.3 中已报告的问题。
配置文件 ics.conf 中允许存在重复的参数。这可能会造成参数值混淆。要确定系统使用的是哪一个参数实例,请找到文件中的最后一个实例。系统将使用处理文件时所找到的最后一个参数实例的值。
最佳实践:将所有更改添加到 ics.conf 文件末尾处标记内容类似于 # My Parameter Changes 的部分。要保留所做更改的历史记录,请添加用于描述更改原因的注释以及日期。
请定期注释掉不再使用的旧更改,或者如果您不需要保留更改历史记录,请删除不再使用的旧重复项,只在文件中保留最新更改。
在此版本中,XSL 文件中的字符串替换不再于打包的预处理步骤完成。因此,字符串将被实时替换,这会降低 Calendar Express 用户界面的性能。
解决方法:通过处理所有 XSL 文件并手动插入正确的语言字符串,可以在运行 Calendar Server 之前执行字符串替换。要执行替换,必须添加 perl 脚本 (xslvarparser.pl),该脚本位于 { CAL_SERVER_BASE}/tools/unsupported/bin 目录。脚本自身将提供有关运行脚本的说明。
为了方便起见,脚本中提供的说明如下所示:
使用 perl 脚本 xslvarparser.pl 替换 XSL 文件中的变量来加速 XSL 渲染过程。
将此文件复制到 /opt/SUNWics5/cal/html 目录(在 Solaris 上为默认目录)。
然后将其作为 $ perl xslvarparser.pl 运行。
生成的文件将放在每个语言环境的输出目录中。
将每个语言环境中的 XSL 文件替换为输出目录中的文件。
建议您在执行此替换操作之前先保存原始文件。
此问题与Calendar Server 6.3 中已报告的问题中编号为 6385495 的问题相同。
每个 set_userprefs 命令仅删除多值首选项的一个实例。
解决方法:要删除多值用户首选项的所有实例,必须对每个实例发出一个 set_userpref 命令。
例如:执行 get_userprefs 列出所有用户首选项。如果首选项(如 icsSubscribed)有多个值,则必须对列出的每个值发出一个 set_userprefs 命令来删除此首选项。
没有特定于群集的 showrev 命令来显示群集单个节点上安装的程序。(这是一个普遍问题,不只是特定于 Calendar Server。使用在全局文件系统上安装的任何产品都会遇到同样的问题。)
更新 Calendar Server 时会遇到此问题。您需要将修补程序应用于安装 Calendar Server 的每个节点上。此外,不能将修补程序应用于尚未安装 Calendar Server 的节点上。如果不知道哪些节点上安装了 Calendar Server,则尝试找出这样的节点将是一件既麻烦又费时的事情。
解决方法:运行以下命令以查看安装了 Calendar Server 的所有节点:pkgparam -v SUNWics5 | grep ACTIVE_PATCH
如果启用了弹出阻止程序,将不显示某些 Calendar Server 窗口。
解决方法:对 Calendar URL 禁用弹出阻止程序,以确保显示所有 Calendar Server 窗口。
例外:无论是 Norton Inet Security AD_BLOCKER 还是 Mozilla 内置 POP_BLOCKER,都不会影响 Calendar Server 窗口。
csuser 实用程序无法启用其为通讯录创建的用户。
解决方法:使用 ldapmodify 启用该用户。
配置程序 csconfigurator.sh 只配置一个域。
解决方法:如果您需要一个多域日历环境(称为虚拟域或托管域),则必须执行以下两个步骤:
启用托管域。
使用 Delegated Administrator 自行添加域,或者如果您仍在使用 Sun LDAP Schema 1,请使用 csdomain 实用程序来创建多域环境。
请参见《Sun Java System Calendar Server 6.3 Administration Guide》中的第 10 章 “Setting Up a Multiple Domain Calendar Server 6.3 Environment”和《Sun Java System Calendar Server 6.3 Administration Guide》中的第 13 章 “Administering Calendar Server Domains”。
(问题编号 4777792)高速缓存会全部被占用,从而导致错误。Calendar Server 不终止 LDAP 高速缓存数据的使用。
解决方法:定期删除文件内容。然后重新启动 Calendar Server。
配置文件请求了两次主机名。一次为全限定主机名,另一次则为非全限定主机名。例如:
caldb.dwp.server.skate.red.sesta.com.ip = "skate.red.sesta.com" caldb.dwp.server.skate.ip = "skate" caldb.dwp.server.test12.red.sesta.com.ip = "test12.red.sesta.com" caldb.dwp.server.test12.ip = "test12"
如果 X 标记中有非 RFC 兼容数据,则必须用引号引起来。例如,X 标记中的冒号必须显示为 ":"。
将用户作为辅助所有者添加到所有者列表之前,Calendar Server 实用程序 cscal 没有验证这些用户。
Calendar Server 迁移实用程序 csmig 没有使用所有者日历来更新 icsSubscribed。
必须手动完成此操作。
事件通知服务已过时。此问题将不会修复。请改用 Sun Java System Message Queue 产品。
如果用户修改了事件并选择了选项来修改今天的事件和所有将来的事件,则所有以前的事件都将被删除且不再显示在 UI 中。
在 SSLv2 模式下,SSL 初始化失败。无法使用 SSLv2 客户端。
在 Schema 1 中,必须在创建或管理日历之前先创建 DC 树节点。
由于错误消息源自若干层之下,并且可能由很多不同环境引起,因此错误消息的含义模糊。下一个较高层的程序在将错误消息升级到更高层之前,不会对该错误消息进行解释。
如果描述的开头带前导空格,则该空格不会与文本一起保存,并且在显示事件时不会出现。
这是此发行版中尚未实现的 RFE。
其余的锁定文件阻止其重新启动。请在重新启动前删除这些锁定文件。
锁定文件位于以下目录中:
/opt/sun/calendar/lib/lock/__db.001
根据法律规定,夏令时 (Daylight Savings Time, DST) 变更日期发生了变化。Calendar Server 6.3 软件包含了新的更正过的时区表。此后创建的所有事件和任务都会使用正确的时间。然而,处于新旧变更日期之间的先前存在的事件和任务将有一小时误差。在您的日历中,该问题每年发生两次。一次是在春季标准时间向夏令时变更时,另一次是在秋季夏令时向标准时间变更时。
此问题与本文档后面Calendar Server 6.3 中已报告的问题中编号为 6502376 的问题相同。
修复:此问题的标准修复方法是允许用户为日历中受影响的任何事件调整时间。
可以请求技术支持提供一个修复程序。
不能使用导入功能在日历之间移动数据。只能将数据导入到先前导出它的日历(具有相同的 calid)中。
本文档的Calendar Server 6.3 中已报告的问题部分中编号为 6461183 的问题记录了此限制。
以下列出了已报告的有关该产品的问题:
对于托管域环境,csexport 要求使用全限定的 calid。例如,使用 uid@domain 格式。
未创建状态文件。
使用 -saveState 选项调用 csconfigurator.sh时,如果指定的状态文件不包含路径,则不会创建状态文件。例如:
/opt/sun/calendar/sbin/csconfigurator.sh -saveState cs.state
解决方法:始终指定应创建状态文件的位置的完整路径名。
默认情况下资源日历的邀请状态应该为“已接受”。
默认情况下,资源日历的邀请状态应该为“已接受”。由于资源日历无法接受邀请,因此订阅资源日历的用户可能看不到这些邀请(如果用户在 "Communications Express"->“选项”->“日历视图”中选择只查看已接受的邀请)。
解决方法:服务器级别的自动接受由 ics.conf 参数 resource.invite.autoaccept = "yes" 确定。它还可以使用 icsAutoaccept LDAP 属性按资源级别来确定。
使用周期性事件的问题。
在dtstart 和 dtend 参数中发送非日期字段修改(使用 storeevents)时,将导致数据中断。
解决方法:对于需要非日期字段修改的修改存储库命令,不提供 dtstart 和 dtend。
如果目录服务器为 Schema 2,并且没有创建域,则 Calendar Server 配置程序将显示错误消息,并且不允许对此目录服务器进行配置。
只在 GUI 版本的配置程序中对此问题进行了修复。对于命令行版本,必须于配置 Calendar Server 之前在 Delegated Administrator 中创建域。
从 Java ES 2005Q1 升级之后,将无法使用 Access Manger 进行单一登录。例如,当您登录到 Portal Server 桌面,然后尝试访问 Calendar Server 时,将会显示登录页面,而不是自动通过单一登录进行验证。
解决方法:此问题没有解决方法。
升级包含前端和后端安装的 Calendar Server 部署之后,在使用 DWP 进行通信时,无法启动前端安装,并在日志中生成多种错误。发生此问题是因为缓存目录未被复制到新的安装中。
解决方法:将 /var/opt/SUNWics5/csdb.old 中的 cld_cache 和 ldap_cache 目录复制到 /var/opt/SUNWics5/csdb。然后,将新目录的所有者和组分别设置为 icsuser 和 icsgroup。
csdb 中的数据库日志文件累积。
存储库守护进程未读取正确的配置文件参数。它正在查找不存在的 caldb.berkeley.*.enable。然后,它将采用已禁用的循环记录的默认值。这还会引发其他问题,包括无法进行热备份。正确的 ics.conf 参数是 caldb.berkeleydb.*.enable。
解决方法:重新启动服务。通过删除累积的日志文件,csstored 可解决日志累积问题。
不能使用导出/导入功能在具有不同 calid 的日历之间移动数据。导入的数据必须与要导入数据的日历具有相同的 calid。
csrestore 不处理个人用户日历。
创建个人日历并成功运行备份之后,请手动删除此个人日历。然后,使用 restore 命令恢复此个人日历。从日志文件中,您可以查看到日历已被成功恢复。但是,登录到 UWC 或 Calendar Express 界面时,将无法查看或管理个人日历。此问题在于 csrestore 不处理用户 LDAP 条目、已订阅的日历或个人日历。
解决方法:为每个用户手动编辑或删除多值属性 icsSubscribed,该属性是使用 csrestore 删除或恢复的。
会话数据库损坏导致登录失败和过多的会话超时消息。
解决方法:
停止服务
删除会话数据库
启动服务
没有与 Calendar Server 软件包捆绑的 JMQ 客户端。请使用已安装的 Messaging Server 中的 JMQ 客户端。安装 JMQ 客户端失败会导致启用 JMQ 时 admind
进程异常终止。
解决方法:从 Messaging Server 软件包复制 JMQ 客户端。
从 2007 年 3 月 11 日到 2007 年 4 月 1 日,日历事件有一小时误差
发生该问题的原因是,为了延长夏令时的时间,变为夏令时和变回标准时间的日期发生了改变。变更日期现在发生在春季(3 月)和秋季(11 月),开始时间比前几年提前了,结束时间则推后了。随 Calendar Server 6.3 发布的时区文件已经更新,以反映这些变化。
对于 Communications Express(它使用 JVM 时区信息而不是 Calendar Server 时区文件),您必须更新 JVM 以反映新的时区变化。Sun 建议使用最新的 Sun Java SE JDK/JRE 更新版作为首选工具,用于传送时区数据更新和其他产品改进(如安全修复)。请使用 JVM 更新程序,如以下文档所述:
http://java.sun.com/javase/tzupdater_README.html
更新时区信息后,安排在时区更新前的事件在新旧变更日期之间的这些天会出现一小时的偏差。
可以请求技术支持提供一个修复此问题的可执行文件。
另一种方法是要求用户更新处于新旧变更日期之间的事件的时间。或者,也可以运行您自己的脚本来处理那些需要更新的少数事件的数据库。
LDAP 工具的位置已改变
如果您已经安装了 Java Enterprise System 的早期版本 (beta),在安装 Java Enterprise System 5 的发行版本 (RR) 之前需要删除 SUNWldapcsdk-tools 软件包。这是因为发行版本中 SUNWldapcsdk-tools 软件包的位置发生了更改。如果未删除该软件包,而试图在安装发行版本后启动 Calendar Server 或 Messaging Server,您将收到以下错误消息:
Could not find .../bin/ldapsearch utility Please install the ldapcsdk-tools package |
出现该错误消息是因为 LDAP 工具的位置发生了更改。
解决方法:在安装发行版本的 Java Enterprise System 5 之前,请删除 SUNWldapcsdk-tools 软件包。要查看 SUNWldapcsdk-tools 的版本,请运行命令 pkgparam -v SUNWldapcsdk-tools VERSION。
您的版本必须是 6.00,REV=2006.12.11.00.08 或更高。否则,您将收到一条错误消息,显示没有找到 LDAP 搜索实用程序。
使用 pkgrm SUNWldapcsdk-tools 命令删除 SUNWldapcsdk-tools 软件包。
如果已经运行了 Java Enterprise System 5 安装程序,您可以手动删除 SUNWldapcsdk-tools 软件包,并使用如下命令安装它:
cd <jes5_distro>/Solaris_sparc/Product/shared_components/Packages pkgadd -d . SUNWldapcsdk-tools |
在 Linux 平台上,无法启动 csmfagent 服务器。
在 Linux 版中,日历二进制文件无法找到 Monitoring Framework 的共享库。Monitoring Framework 文件的正确路径是 /opt/sun/mfwk/share/lib,但 Calendar Server 认为它位于 /opt/sun/calendar/lib 中。
解决方法:添加一个指向 Calendar Server 库中正确库的符号链接,如以下示例所示:
# cd /opt/sun/calendar/lib # ln -s /opt/sun/mfwk/share/lib/*.so
另一种解决方法是从 Monitoring Framework 库中启动日历服务,例如 /opt/sun/mfwk/share/lib
在 Linux 平台上,升级到 Calendar Server 6.3 后无法登录。
该问题在 Calendar Server 6.3 Upgrade 1 中已修复,修补程序编号为 121658-17。有关该问题的详细信息,请参见本发行说明的以下部分:Calendar Server 的已知限制。
使用配置程序设置后端服务器时,配置程序会错误地将 IP 地址(而非全限定主机名)放置在以下参数中:
caldb.dwp.server.hostname.ip
必须编辑 ics.conf 文件以更正此参数值,否则系统将无法找到后端服务器。正确的值为后端服务器的全限定主机名。
高可用性软件包 SUNWcsics 需要一些更新才能正常工作。Java Enterprise System 软件包中使用的 SUNWcsics 软件包没有问题。在发布解决此问题的修补程序之前,必须使用以下解决方法:
手动从 Calendar Server 分发包中删除 SUNWcsics 软件包。
执行 pkgadd 命令添加 Java Enterprise System 软件分发包中的 SUNWcsics 软件包。