Assume that you enable the Change Data Capture (CDC) feature on a table to run a log scan in Microsoft SQL Server. The pollinginterval parameter is converted from seconds (s) to hours (h) in the sys.sp_cdc_scan stored procedure. However, when the pollinginterval parameter is greater than one hour (>3600 s), you notice that the converted result is incorrect.
declare @pollinginterval bigint, @seconds bigint, @minutes bigint, @hours bigint
set @pollinginterval = 3600
select @seconds = @pollinginterval % 60
select @minutes = ((@pollinginterval - @seconds) / 60) % 60
select @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60
--- Next attempt below line instead
--- select @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60 /60
select @hours, @minutes, @seconds
This problem is fixed in the following cumulative updates for SQL Server:
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Learn about the terminology that Microsoft uses to describe software updates.