Q: Calendar Service Permission Problems
I suspect my calendar files are suffering from incorrect permissions and maybe even erroneous ACLs. However, I'm not sure how to fix that. All this started after restoring to a different hard drive from Time Machine (I was doing a hard drive migration after upgrading to a SSD -- 'Server HD' is the SSD drive, and 'Data HD' is a larger, conventional hard drive where the data files are stored).
Here are the errors I am getting in the Calendar Error Log from Server App 2.2:
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] Connection close failed
2012-12-22 11:26:54-0700 [-] [groupcacher] Traceback (most recent call last):
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threadi ng.py", line 552, in __bootstrap_inner
2012-12-22 11:26:54-0700 [-] [groupcacher]
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threadi ng.py", line 505, in run
2012-12-22 11:26:54-0700 [-] [groupcacher]
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 51, in _worker
2012-12-22 11:26:54-0700 [-] [groupcacher] self._closeConnection()
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 59, in _closeConnection
2012-12-22 11:26:54-0700 [-] [groupcacher] self.pool._close(conn)
2012-12-22 11:26:54-0700 [-] [groupcacher] --- <exception caught here> ---
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/enterprise/adbapi.py", line 439, in _close
2012-12-22 11:26:54-0700 [-] [groupcacher] conn.close()
2012-12-22 11:26:54-0700 [-] [groupcacher] exceptions.AttributeError: 'NoneType' object has no attribute 'close'
2012-12-22 11:26:54-0700 [-] [groupcacher]
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] Exception in thread PoolThread-4431952784-1:
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] Traceback (most recent call last):
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threadi ng.py", line 552, in __bootstrap_inner
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threadi ng.py", line 505, in run
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 51, in _worker
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] self._closeConnection()
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 60, in _closeConnection
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] del self.pool.connections[tid]
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] KeyError: 4440956928
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-]
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] Unhandled error in Deferred:
2012-12-22 11:26:54-0700 [-] [groupcacher] 2012-12-22 11:26:54-0700 [-] Unhandled Error
2012-12-22 11:26:54-0700 [-] [groupcacher] Traceback (most recent call last):
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 397, in errback
2012-12-22 11:26:54-0700 [-] [groupcacher] self._startRunCallbacks(fail)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 464, in _startRunCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] self._runCallbacks()
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 551, in _runCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] current.result = callback(current.result, *args, **kw)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1101, in gotResult
2012-12-22 11:26:54-0700 [-] [groupcacher] _inlineCallbacks(r, g, deferred)
2012-12-22 11:26:54-0700 [-] [groupcacher] --- <exception caught here> ---
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/directory/directory.py", line 1090, in update
2012-12-22 11:26:54-0700 [-] [groupcacher] yield self.updateMethod()
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/directory/directory.py", line 824, in updateCache
2012-12-22 11:26:54-0700 [-] [groupcacher] delegatedGUIDs = set((yield self.proxyDB.getAllMembers()))
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/directory/calendaruserproxy.py", line 890, in getAllMembers
2012-12-22 11:26:54-0700 [-] [groupcacher] returnValue([row[0] for row in (yield self.query("select DISTINCT MEMBER from GROUPS"))])
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 206, in query
2012-12-22 11:26:54-0700 [-] [groupcacher] yield self.open()
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/directory/calendaruserproxy.py", line 802, in open
2012-12-22 11:26:54-0700 [-] [groupcacher] result = yield super(ProxyDB, self).open()
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 111, in open
2012-12-22 11:26:54-0700 [-] [groupcacher] test = (yield self._test_schema_table())
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 518, in _test_table
2012-12-22 11:26:54-0700 [-] [groupcacher] """ % (name,)))
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 431, in _db_value_for_sql
2012-12-22 11:26:54-0700 [-] [groupcacher] for row in (yield self._db_values_for_sql(sql, *query_params)):
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/internet/defer.py", line 1043, in _inlineCallbacks
2012-12-22 11:26:54-0700 [-] [groupcacher] result = result.throwExceptionIntoGenerator(g)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/failure.py", line 382, in throwExceptionIntoGenerator
2012-12-22 11:26:54-0700 [-] [groupcacher] return g.throw(self.type, self.value, self.tb)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/database.py", line 416, in _db_values_for_sql
2012-12-22 11:26:54-0700 [-] [groupcacher] results = (yield self.pool.runQuery(sql, *query_params))
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/threadpool.py", line 207, in _worker
2012-12-22 11:26:54-0700 [-] [groupcacher] result = context.call(ctx, function, *args, **kwargs)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/context.py", line 118, in callWithContext
2012-12-22 11:26:54-0700 [-] [groupcacher] return self.currentContext().callWithContext(ctx, func, *args, **kw)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/python/context.py", line 81, in callWithContext
2012-12-22 11:26:54-0700 [-] [groupcacher] return func(*args,**kw)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/enterprise/adbapi.py", line 445, in _runInteraction
2012-12-22 11:26:54-0700 [-] [groupcacher] conn = self.connectionFactory(self)
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/enterprise/adbapi.py", line 38, in __init__
2012-12-22 11:26:54-0700 [-] [groupcacher] self.reconnect()
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/enterprise/adbapi.py", line 75, in reconnect
2012-12-22 11:26:54-0700 [-] [groupcacher] self._connection = self._pool.connect()
2012-12-22 11:26:54-0700 [-] [groupcacher] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/enterprise/adbapi.py", line 414, in connect
2012-12-22 11:26:54-0700 [-] [groupcacher] conn = self.dbapi.connect(*self.connargs, **self.connkw)
2012-12-22 11:26:54-0700 [-] [groupcacher] sqlite3.OperationalError: unable to open database file
2012-12-22 11:26:54-0700 [-] [groupcacher]
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] Log opened.
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] twistd 12.0.0 (/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/ Contents/MacOS/Python 2.7.2) starting up.
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] reactor class: twext.internet.kqreactor.KQueueReactor.
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] HTTPFactory starting on 62310
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] set uid/gid 93/93
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] Traceback (most recent call last):
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/usr/bin/twistd", line 14, in <module>
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] run()
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/scripts/twistd.py", line 27, in run
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] app.run(runApp, ServerOptions)
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/application/app.py", line 652, in run
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] runApp(config)
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/scripts/twistd.py", line 23, in runApp
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] _SomeApplicationRunner(config).run()
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/application/app.py", line 390, in run
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] self.postApplication()
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/scripts/_twistd_unix.py", line 208, in postApplication
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] self.startApplication(self.application)
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/scripts/_twistd_unix.py", line 326, in startApplication
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] app.startApplication(application, not self.config['no_save'])
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/application/app.py", line 674, in startApplication
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] service.IService(application).startService()
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twi sted/application/service.py", line 282, in startService
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] service.startService()
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/mail.py", line 847, in startService
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] mailer.purge()
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/mail.py", line 951, in purge
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] datetime.timedelta(days=self.days))
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/mail.py", line 744, in purgeOldTokens
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] """, before
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/sql.py", line 339, in _db_execute
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] q = self._db().cursor()
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] File "/Applications/Server.app/Contents/ServerRoot/usr/share/caldavd/lib/python/twis tedcaldav/sql.py", line 95, in _db
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] raise DatabaseError("Unable to open database %s" % (self.dbpath,))
2012-12-22 11:26:55-0700 [-] [mailgateway] 2012-12-22 11:26:55-0700 [-] sqlite3.DatabaseError: Unable to open database /Volumes/Data HD/Library/Server/Calendar and Contacts/Data/mailgatewaytokens.sqlite
When trying to connect to my calendar on the client machine, I get the following message:
The request for account “rocking-mm.com Calendar” failed.
The server responded with
“500”
to operation CalDAVAccountRefreshQueueableOperation.
Any suggestions on how to correct these problems?
Thanks!
~Mike
OS X Server, 4GB RAM, Mountain Lion
Posted on Dec 22, 2012 10:34 AM
I don't know which of those two locations is the one where your server expects to find the data. But obviously, the permissions of both are indeed wrong. You can correct them both this way, after backing up all data:
sudo chown -R _calendar:_calendar {,/Volumes/*}/Library/Server/Calendar\ and\ Contacts/Data
WARNING: That command is to be copied and pasted into a Terminal window, not typed.
Restart the Calendar service and see whether there's an improvement.
Posted on Dec 22, 2012 8:07 PM