What's
in this Release
iPlanet Calendar Server (iCS)
version 2.1 is a high performance, standards-based calendaring server.
It is designed to scale to large numbers of calendar users hosted by a
single machine. It provides personal calendar information to users and
allows them to share all or some of their calendar information with others
on the Internet. It's client interface is the Web Calendar Access Protocol
(WCAP), which uses HTTP as it's transport. Refer to the
Calendar
Server Programmer's Reference for details on WCAP.
A web client, Calendar Express,
is provided as part of the Calendar Server. Calendar Express is JavaScript-based
and runs on the Netscape Communicator and
Microsoft Internet Explorer browsers. Other clients, including for
PDA and wireless devices, will be available shortly. Calendar Express has
the following features:
-
Create and edit calendars (name,
description, time zone) and calendar sets (a single composite view of multiple
calendars), including support for:
-
Multiple owners of a calendar.
-
Simple access control (public
or private read and write).
-
Multiple time zones associated
with calendars and calendar sets.
-
Create and edit events and
tasks (summary, date/time, location, description), including support for:
-
Recurring (repeating) events
and tasks.
-
Notification and reminder (minutes,
hours, or days before an event or task) emails to multiple recipients.
-
Multiple views like overview,
day, week, and month, including support for:
-
Table, list, and condensed
views.
-
View (without login) of public
calendars.
-
HTML render of summaries and
descriptions.
-
Print preview.
-
Find other calendars by id,
name, or owner, including support for:
-
Subscription to other calendars.
-
Links to individual events
in other calendars.
-
Import and export of calendars
in text/calendar or text/xml formats.
-
Options to change appearance
and default settings.
-
Localizeable to other countries
and languages; default is US English.
The Calendar Server also includes
a tool that automates simple customizations of Calendar Express. These
include the ability to change the name, branding, and icons. The UI can
be extensively modified by changing the server's Javascript and HTML. A
simple update might be to add a frame for banner advertising. A more extensive
change might be to change the entire look and feel of the application.
Here is a document
that may be of use:
The Calendar Server also supports
a plugin layer called Calendar Server API (CSAPI). Although LDAP is the
default mechanism for user authentication and for storing user preferences,
this plugin layer allows for custom plugins that can interface to non-LDAP
user authentication and user preferences. Refer to the Calendar
Server Programmer's Reference for details on CSAPI.
A number of command line
utilities to perform administration tasks is included with the Calendar
Server. One or more users can be assigned as Calendar Server administrators.
These administration utilities provide ways to:
Start and stop the Calendar
Server.
Backup and restore the calendar
database.
Create, modify, delete, or
list calendars and their components.
Create, modify, delete, or
list calendar users.
List or logout user sessions.
Display Calendar Server statistics.
All Calendar Server configuration
is centralized in an ASCII configuration file that is installed with the
Calendar Server. There are over 100 parameters in this file. Refer to the
Calendar
Server Administrator's Guide for details on how to configure and administer
the Calendar Server.
Supported
Platforms
Calendar Server 2.1 supports
the following operating systems at the appropriate version and patch levels:
Solaris 2.6 and 2.7 (SPARC)
with recommended patches. See:
http://access1.sun.com/patch.recommended/rec.html
HP-UX 11.00 (PA-RISC1.1 or
better) with the following required operating system patches:
PHKL_18141
PHNE_16017
See http://hp.com
for information on these recommended patches.
Windows NT 4.0 with Service
Pack 4
NOTE: Read the installation
instructions for these patches carefully. When these patches supersede
another patch, the superseded patch must be removed before installation.
These patches may also have dependencies on other patches, which must be
installed first. Finally, your system may have these patches (or patches
superseded by these patches) installed from the factory. Be careful.
Recommended
Browsers
For Calendar Server 2.1, we
recommend the following Netscape Communicator and Microsoft Internet Explorer
versions:
|
Windows |
Mac |
Unix |
| Netscape Communicator |
4.61 |
4.7 |
4.61 |
| Microsoft Internet Explorer |
5.0 |
Currently
under review |
Not supported |
Solaris
Tuning Recommendations
The following section describes
how to tune Solaris Kernel Parameters to support large numbers (greater
than 100K) configured users.
Configurable Kernel Parameters
-
Dump kernel tcp settings.
/usr/sbin/ndd /dev/tcp
\?
-
Dump kernel tcp stats.
netstat -k [interface]
-
Dump protocol stack summary
stats.
netstat -s
Add these lines to /etc/system
set maxusers=2048
set ncsize=300000
set ufs_ninode=300000
-
TCP connection has default
hash of 256. SPECweb96 sets this to 262144. Add this line to /etc/system
set tcp:tcp_conn_hash_size=262144
-
TCP CLOSE_WAIT interval. Solaris
default to 240 seconds (4 minutes). SPECweb96 rules let you set it to 60
seconds. Add this /etc/rc2.d/S69inet
/usr/sbin/ndd -set /dev/tcp
tcp_close_wait_interval 60000
-
Tune the TCP window size.
/usr/sbin/ndd -set /dev/tcp
tcp_xmit_hiwat 32768
/usr/sbin/ndd -set /dev/tcp
tcp_recv_hiwat 32768
-
Tune TCP slow start. It is
advisable to set the initial congestion value to 2 since this is used by
other vendors and will probably be the next standard anyway. This
gives slightly faster throughput for short, high-speed connections.
/usr/sbin/ndd -set /dev/tcp
tcp_slow_start_initial 2
-
Tune TCP connection request
queues.
/usr/sbin/ndd -set /dev/tcp
tcp_conn_req_max_q 1024
/usr/sbin/ndd -set /dev/tcp
tcp_conn_req_max_q0 1024
NOTE: It is also a good
idea to increase swap space. For example, on a 128MB RAM machine, 1GB is
a good number.
HP-UX
Tuning Recommendations
The following section describes
how to tune HP-UX Kernel Parameters to support large numbers (greater than
100K) configured users.
Configurable Kernel Parameters
You must set the parameters
by hand. They are configurable parameters, but HP-UX system administration
tools (sam, kmtune) won't allow numbers this high. The procedure for setting
any tunable kernel parameter is as follows:
-
Edit /stand/system to modify
the kernel parameter you're interested in. This must be done with some
care; the parameter must be listed exactly by name.
-
Run 'mk_kernel -o /stand/vmunix'.
This builds the new kernel, kernel function set, and marks the kernel for
replacement on reboot.
-
Reboot the system.
-
max_thread_proc (maximum threads
per process)
set to 8192
-
nkthread (maximum threads in
system)
set to 32768
-
maxdsiz (max data segment size
limit, heap memory)
figure 100K per concurrent
user session, depending on the size of their inbox, a good number is 1GB
(0x040000000)
-
maxtsiz (max text size)
use 64MB (0x04000000)
-
maxfiles_lim (max number of
open files per process)
set to 32768
-
nfile (max number of files
system wide)
set to 65536
-
ninode (maximum number inodes
in memory)
set to 32768
These numbers should serve
as a baseline for kernel tuning, and are a little higher than can be used
safely on a 128MB C160 (workstation class machine). If these numbers are
set too high, your system will exhaust lockable memory, and your system
will fail to start up properly (network tracing and logging daemons are
the first to complain, and X won't work). Calendar Server needs lots of
intra-process resources, but comparatively few global resources. For this
reason nproc, nusers, and similar system wide resources can be left low,
freeing up lockable memory for inode and thread structures. The exceptions
to this rule are nkthread, nfile, and ninode, which also restrict per process
limits.
NOTE: It is also
a good idea to increase swap space. For example, on a 128MB RAM machine,
1GB is a good number.
Windows
NT Tuning Recommendations
The number of simultaneous
connections should be limited to 250.
Known
Limitations and Considerations
Calendar Server 2.1 includes
the following known limitations and considerations See also Potential
Problems and Solutions later in this document for other issues that
might affect product capability or use.
Administration
The cscal utility does not
validate the name of a calendar (it's calid) as correct, nor does it validate
that the owner or other owners are actual users. (368514)
Consideration: Please
make sure you use a valid calid, owner, or other owner when creating or
modifying a calendar.
(Solaris only) The csversion
utility does not work.
Consideration: The
Calendar Server version is logged in the server log file on startup. Each
administration utility accepts a version command to display it's version.
The csdb utility has a list command to display the version of each server
database.
Calendar Express
Unable to login using Netscape
Communicator 4.05 (367638)
Consideration: This
version is not supported. Upgrade to one of the recommended
Netscape Communicator versions.
If a user session times
out, this can fail silently (no error dialogs) and some links (New Event
and New Task) are removed until the user logs back in. (356996)
Consideration: The
user session time out value can be increased by changing the service.http.sessiontimeout
value in the server.conf file. The default is 1800 seconds (30
minutes).
Finding a calendar may only
return a partial list of calendars.
Consideration: Only
the first 200 calendars are returned. Narrow your search parameters to
return less calendars.
Cannot save notification
or reminder email addresses for linked events. (367015)
Consideration: Subscribe
to the entire calendar or make a copy of this event in your own calendar.
Month view is changed to
Overview view when the browser is resized. (365791)
Consideration: This
is a browser problem.
(UNIX only) Javascript error
when viewing details of a newly created event. (368305)
Consideration: Logout
and log back in.
WCAP
Invalid RDATE, EXDATE, RRULE,
and EXRULE property strings are kept when storing components or importing
calendars. (354177)
Consideration: Use
valid iCalendar property values.
A RDATE value without "Z"
is not parsed correctly. (354748)
Consideration: The
RDATE is stored in local time, instead of relying on a TZID parameter.
When importing a Date property,
values without "Z" or a TZID are saved in GMT time. (355680)
Consideration: Values
without the "Z" should be saved in local time; otherwise, always include
the TZID.
Importing all day events
in daylight savings are 1 hour off. (357440)
Consideration: Once
these day events have been imported, adjust their times.
The set_calprops command
does not validate owners. (358964)
Consideration: Please
make sure you use a valid owner.
XML formatted properties
with multi-values may not be stored properly. (355751)
Consideration: This
can occur with the category and other owners property.
Fetching components by id
does not work with fmt-out="text/csv". (368814)
Consideration: Use
text/calendar or text/xml.
Calendar Server
Admin ports less than 1024
cannot be opened. (362800)
Consideration: Change
the service.http.admin.port value in the server.conf
file to have a value greater than 1024.
While the server is under
heavy load, log files can get bigger than the limits specified by logfile.maxlogfilesize
and logfile.maxlogsize. (357861)
Consideration: Periodically
delete your log files or back them up to tape.
If the LDAP server goes
down while the calendar server is under heavy load, a server process may
become unavailable. (366618)
Consideration: Shutdown
the Calendar Server until the LDAP server is back up or setup another LDAP
server for fail over.
Potential
Problems and Solutions
The following section details
the known problems and solutions for the Calendar Server 2.1 release. If
a bug report number follows the problem, please use that number when communicating
with Netscape Technical Support concerning the problem.
See also the previous section,
Known
Limitations and Considerations, and the following section, Corrections
to the Documentation, for other issues that might affect product capability
or use.
Installation
-
Important note if you have
downloaded a Unix version:
The tar files generated
for download use the GNU tar utility. In most cases the "GNU tar" (also
known as "gtar") and the native Unix "tar" commands are compatible. However,
in this case they are not. At this time, you must obtain a copy of the
GNU tar utility and use it to extract the files from the archive.
-
Note: Neither Netscape Communications
Corp., Sun MicroSystems Inc., nor iPlanet provide support for the GNU tar
utility.
-
(Solaris only) Error message
"Installation of partially failed". (364450)
Solution: This message
can be caused by an incompatibility between the tar used to package the
product and the one used during installation. Use the 'which tar' command
to determine which tar was used. You must use the standard Solaris tar,
which is usually found in /usr/bin/tar or /bin/tar
-
(HP-UX only) No display
when redirecting to a remote display. (365001)
Solution: This is
a known problem in the HP-UX java sdk. Older version (such as 1.1.2) work
but newer versions (such as 1.1.7) do not work. Use the '-nodisplay' option
at the console.
Administration
None of the administration
utilities will return to the command prompt and nothing is logged to the
admin.log file. (367278)
Solution: Stop the
Calendar Server. Then, in the <server-root>/cal/bin directory,
remove the lock/__db_lock.share file.
Calendar Express
Microsoft IE 4.x clients
are reporting scripting errors.
Solution: They may
have an old version of the jscript DLL. Please have them go the Microsoft
website
to fetch and then install the latest version of this DLL.
If a summary with embedded
HTML, it's display may span multiple days. (358674)
Solution: Remove
the HTML or increase the size of the browser window. This will be addressed
in future versions of this client.
Trying to create a Calendar
Set that was just deleted can cause a Javascript error. (362517)
Solution: Close
the Properties window after deleting a Calendar Set, then reopen this window
to recreate the same Calendar Set.
Calendar Server
-
The server can become unavailable
if the file system it is installed on becomes full. (357995)
Solution: You should
periodically monitor the disk usage and if it gets close to becoming full,
free up some disk space or add more disks. An unsupported disk usage monitor,
csmonitord, is provided to send email to a list of addresses when a configured
threshold is reached.
-
Server performance is slower
than expected for your machine configuration.
Solution: Edit the
server.conf file.
-
Increase the number of processes
to match the number of CPUs:
service.http.numprocesses
4
-
Put the calendar database on
a large and fast RAID disk partition:
caldb.berkeleydb.logdirectory
"/fastdisk"
caldb.berkeleydb.homedirectory
"/fastdisk"
-
Put the http caches on a large
and fast RAID disk partition:
service.http.dbcachesize
"/fastdisk2"
service.http.dbtmpdir "/fastdisk2"
service.http.attachdir
"/fastdisk2"
-
Reduce logging verbosity:
logfile.loglevel "Warning"
-
You have more than 100,000
configured users.
Solution: Edit the
server.conf file:
-
Increase the authentication
cache:
service.authcachesize "500000"
service.authcachettl "172800"
-
If you have more than 5,000
logged-in users per CPU.
Solution: Edit the
server.conf file:
-
Increase the maximum number
of sessions:
service.http.maxsessions
"10000"
-
If you have more than 1,000
concurrent connections per CPU.
Solution: Edit the
server.conf file:
-
Increase the maximum number
of client threads:
service.http.maxthreads
"2000"
Corrections
to the Documentation
The service.listenaddr
attribute parameter is supported in both iCS 2.0 and iCS 2.1 and only works
in UNIX environments. It is used to specify the specific TCP address iCS
will listen on for client http requests. The default is INADDR_ANY. It
would be appropriate to use this parameter when the UNIX host has more
than one network card and you want iCS to use a specific network card.
How
to Report Problems
See the Netscape Technical
Support site at http://help.netscape.com.
Where
to Go for More Information
For the Calendar Server Administrator's
Guide and related documents, visit:
http://developer.netscape.com/docs/manuals/calendar.html
For the Calendar Server
installation instructions, visit:
http://developer.netscape.com/docs/manuals/calendar.html
For the Netscape Directory
Server 4.1 installation instructions, visit:
http://home.netscape.com/eng/server/directory/4.1/install/contents.htm
If you can't find the information
you need, please contact Netscape
technical support.
Where
to Go for More Information For the Calendar Server Administrator's
Guide and related documents, visit:
http://developer.netscape.com/docs/manuals/calendar.html
For the Calendar Server
installation instructions, visit:
http://developer.netscape.com/docs/manuals/calendar.html
For the Netscape Directory
Server 4.1 installation instructions, visit:
http://home.netscape.com/eng/server/directory/4.1/install/contents.htm
If you can't find the information
you need, please contact iPlanet
technical support.
Copyright
2000 Sun Microsystems, Inc. Some preexisting portions Copyright ©
Netscape Communications Corp. All rights reserved.