windows-notes-20050926
[openafs.git] / doc / txt / winnotes / afs-changes-since-1.2.txt
index 01af565..c3e3467 100644 (file)
@@ -1,9 +1,237 @@
+Since 1.4.0 rc4: 1.4.0 rc5 released (25 Sep 2005)
+
+ * New Product Code GUIDs issues for 1.4 and 1.5 branches.  Separate
+   GUIDs for each platform.
+
+ * Documentation directory structure and default installation rules
+   for MSI 
+
+ * New OpenAFS for Windows HTML Release Notes installed
+   as part of the documentation set.
+
+ * Add thread id to rx debugging messages
+
+ * When all servers are offline, return a bad network path error
+   immediately.  This is necessary to allow Explorer to do the 
+   right thing and not hang.   The background daemon thread will
+   check the down servers every 30 seconds to see if they are
+   back up.  
+
+Since 1.4.0 rc3: 1.4.0 rc4 released (14 Sep 2005)
+
+ * The AFSCache file has been modified to store both the
+   serial number of the volume on which the file resides
+   and the SID of the local machine.   If either change,
+   a new UUID is generated.
+
+ * add "fs flushall" command that forces all data buffers
+   to be flushed.
+
+Since 1.4.0 rc2: 1.4.0 rc3 released (4 Sep 2005)
+
+ * add support for '/' instead of '\' in pioctl() calls
+
+ * Apply AFS Client Admins group protect to AFS Shell Extension
+
+ * Add support for \\afs\<name> to most AFS Shell Extension 
+   commands except the symlink methods. 
+
+ * when installing the Microsoft Loopback Adapter, enable
+   MS Client for Networks and prevent an install failure 
+   by not calling CoInitialize twice in the same thread.
+
+ * reload cell vldb values from the CellServDB every two
+   hours in case it changes
+
+ * When updating cell information from DNS, be sure to set 
+   a new timeout.
+
+ * Add support to allow use of \\AFS\<foo> where <foo> is 
+   either a mount point or symlink.   As <foo> is normally 
+   treated as a share name, we transform it into \\AFS\all\<foo> 
+   for processing.
+
+ * Init 'code' to prevent false errors when integrated logon 
+   is disabled and the service is not running
+
+Since 1.4.0 rc1: 1.4.0 rc2 released (28 Aug 2005)
+
+ * Removed trace log messages that were hampering performance.
+
+ * Fixed a deadlock that was being triggered by editing Word 
+   documents stored within AFS with WinWord 2003.
+
+ * Bit 3 of the TraceOption registry value is now used to set the
+   default for "fs trace" in the non-Debug builds.  The new default
+   is off for release builds and on for debug builds.
+
+ * Bit 2 of the TraceOption registry value can be used to turn on
+   real-time output of debug log entries to the Windows Debug
+   Output monitor interface.  This data can be viewed with tools
+   such as Sysinternal's DbgView.
+
+New development series 1.5.0 begun (17 Aug 2005)
+
+Since 1.3.87: 1.4.0 rc1 released (17 Aug 2005)
+ * Byte-range locking as described in cm_vnodeops.c has been implemented.
+
+ * When the cache manager reports ALLBUSY or ALLOFFLINE for
+   a resource we should not be returning status codes such
+   as Network Busy or Remote Host Down because these errors
+   will imply that the AFS Client Service is Busy or Down
+   and that is simply not the case.   Instead we will return
+   Bad Network Path as the path is temporarily not available.
+
+   Instead of returning Sharing Paused when there is a
+   timeout error, return Timeout.  Once again, the AFS Client
+   Service is not paused.
+
+ * afscreds.exe would display an Obtain Creds dialog when
+   the expired credentials reminder was triggered even 
+   if there was no network path to the KDC.  This is prevented
+   by adding KDC probe logic to the reminder thread.  
+
+ * afscreds.exe would display expired tokens no differently
+   than unexpired ones.  This would make it difficult for the
+   user to distiguish when the tokens were expired.  For the 
+   English build added a new resource string "(expired) that
+   is displayed instead of the expiration time. 
+
+Since 1.3.86:
+ * "fs wscell" when executed in freelance mode will return the
+   name of the cell configured in the registry.  The root.afs
+   volume is not loaded from this cell, but it is used for the
+   default for aklog and integrated login.
+
+ * "fs mkmount, fs rmmount, symlink make, symlink remove" will
+   no longer work on \\AFS\all when freelance is being used 
+   unless the user is a member of the "AFS Client Admins" Windows
+   Security group.
+
+ * some more checks performed during persistent cache validation.
+
+Since 1.3.85:
+ * Optimize calls to cm_CheckServer from cm_Analyze.  Only check
+   down servers for the current cell not all cells.
+
+ * If the scache LRU list becomes corrupted, the AFS Client Service
+   might enter an infinite loop at startup.   Detect the corruption
+   and discard the cache contents in this case.
+
+ * Fixed the Explorer Shell's remove mountpoint functionality.
+
+ * Fixed a deadlock caused by the holder of cm_aclLock attempting to 
+   obtain a mutex lock on a cm_scache_t object whose lock is held by
+   a thread attempting to obtain the cm_aclLock.
+
+Since 1.3.84:
+ * Really fixed DNS AFSDB queries to ensure that "csail" cannot be
+   misinterpretted as "csail.mit.edu" when the resolver 
+   is configured to append ".mit.edu" to failed DNS queries.
+
+ * Added a new registry key, "LogoffPreserveTokens" (see registry.txt),
+   that can be used to force the preservation of user tokens upon logout.
+
+ * Update the NSIS install scripts to use NSIS 2.07.   This release adds 
+   recommended installation categories: AFS Client, AFS Administrator,
+   AFS Server, AFS Development Kit.  Each category includes a different 
+   default subset of the OpenAFS components.
+
+   The OpenAFS logo is now associated with the NSIS uninstall entry
+   in the Add/Remove Programs control panel.
+
+ * The user name associated with AFS tokens when obtained with
+   integrated login, the afs systray tool, or aklog will always
+   include the full Kerberos 5 user principal name regardless of 
+   whether or not the cell is local to the realm.
+
+ * Eric William's IFS redirector has been checked onto the CVS head.
+   This code is experimental at the current time and is not being 
+   incorporated into the 1-4 branch releases.  Instructions for 
+   building from sources are found in the top-level README-NT file.
+
+ * Modify integrated login so that it does not enter an infinite
+   loop if the service is not set to auto start.
+
+ * Added asetkey.exe used to set a Kerberos 5 key for use by the
+   AFS server daemons
+
+ * Added uninstall.exe to Wix installation
+
+ * More modifications to algorithms used to wake sleeping threads.
+
+Since 1.3.83:
+
+ * Changes to the algorithms used to wake threads when they are
+   put to sleep because of conflicts over buffer operations.
+
 Since 1.3.82:
+ * The OpenAFS integrated logon obtains Kerberos 5 tickets as part of 
+   the process of producing AFS tokens.  The tokens are stored within
+   the AFS Client Service but the Kerberos 5 tickets have been discarded.
+   New functionality has been added to temporarily copy the tickets to
+   a file ccache during the short window between the NPLogonNotify and
+   WinLogon Logon Event.  The Logon Event handler starts a process as
+   user, afscpcc.exe, that copies the tickets into the default ccache.
+   The file ccache is then destroyed by the event handler.
+
+ * During synchronization operations on stat cache entries, if threads
+   are forced to sleep it was possible that the threads would not be
+   woken under heavy load.
+
+ * Enforce the delete on close flag specified by the NTCreateX()
+   operation.
+
+ * A race condition in the rx library was fixed that resulted in 
+   a deadlock in rx_NewCall when the RX_CONN_MAKECALL_WAITING flag
+   was cleared when threads were still waiting to use the 
+   connection.   Also, fixed a potential case in which the 
+   connection could be destroyed while threads were waiting to use it.
+
+ * The DNLC freelist has been seen to become corrupted with still 
+   active entries being stored on the freelist.  Changes were made
+   to perform a better job of cleaning entries before placing them
+   onto the freelist; marking them with the correct magic value when
+   purging the list; and allowing the list to be purged on startup
+   if the cache validation fails.
+
+ * Windows Crash Reporting does not get triggered for afsd_service.exe
+   because it provides its own top level exception handler.  This patch 
+   places an explicit call to ReportCrash() on platforms which support 
+   it.  (XP and above.)
+
+   If you configure Crash Reporting via AD Policy to capture crash
+   reports within the domain, then you will receive this output.
+
+ * Generate MiniDumps independent of the Windows Crash Reporting.
+   (a) If an exception occurs,a minidump will be generated at the path
+       %TEMP%\afsd.dmp. The type of minidump defaults to Normal but 
+       can be set to any other type via use of the
+       registry.      
+
+       [HKLM\SOFTWARE\OpenAFS\Client]  MiniDumpType (DWORD)
+
+   (b) MiniDumps can be generated at any time using the "fs minidump"
+       command.   This allows you to generate a minidump without 
+       stopping the process or even requiring the use of a debugger
+       on the system.
+
+  * an RX connection which reports bad ticket now treats it the same way
+    the expired ticket is treated.   The ticket is removed from the 
+    connection and a new anonymous connection is established.
+
+  * fs memdump now requires that the caller be in the AFS Client Admins
+    group
+
+  * additional debugging information is provided in cm_Analyze when the
+    error code is ignored.
+
   * Fix a regression introduced into the pioctl() client code which
     will cause a crash in winlogon.exe, explorer.exe and fs.exe if
-    MIT KFW is not installed.
+    MIT KFW is not installed. (1.3.82a)
 
-  * Remove AFS Gateway option from OpenAFS Control Panel
+  * Remove AFS Gateway option from OpenAFS Control Panel (1.3.82a)
 
 Since 1.3.81:
   * Fix a race condition in cm_EndCallbackGrantingCall() that