Attention! If you are upgrading a Malevich installation earlier than 5/20/2009 you need to read this!

The interpretation of the change lists time stamps in the code review database has changed. Due to a bug in review.exe prior to today, the change lists uploaded to the database contained local rather than UTC time stamps. This has been fixed today with CL 16828, but the change means that the time stamps submitted earlier contain incorrect date.

The installer has been updated to attempt to fix the situation on upgrade.

However, if you are upgrading manually, you should run the following scripts that fixes the dates (you can run it from SQL Server Management Studio):
USE [CodeReview]

DECLARE @UTCDate datetime
DECLARE @LocalDate datetime
DECLARE @TimeDiff int 
SET @LocalDate = GETDATE()
SET @TimeDiff = DATEDIFF(hh, @LocalDate, @UTCDate) 

UPDATE [dbo].[ChangeList] SET TimeStamp = DATEADD(hh, @TimeDiff, TimeStamp)

(Note - the quick way to figure out if the installation is old enough to require this manual step is to check if you have file datetime.js at the root of your web site. If you do, you have a newer installation, and the upgrade is not required.)

The script has many problems - it ignores differences in DST, and the changes submitted from different time zones are not interpreted correctly, but for the most cases it "improves" the dates.

Whether you are running the installer or not, do upgrade review.exe on the client machines as soon as possible after upgrading the database.

Last edited May 21, 2009 at 4:22 AM by SergeySolyanik, version 4


No comments yet.