|
database
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
A floating point exception occurred in the user process.A floating point exception occurred in the user process. Current transaction is canceled I'm running SQL Server 2000 Standard Edition, sp4. I am running an Online Browser Based Game with SQL as my backend, i have 2 such games the first is hosted on a shared SQL Server with my hosts and does not encounter this error. The Database is a totally different one. The second database is hosted on a SQL Server installed on my Web Server hosted by the same company and originally configured by them. The second database has this error at various times of the day, at first i thought it was caused by "transaction deadlocks" i've researched the problem extensively looking at all the KB articles and other people who have experienced this problem. Several reasons for this error to occur were fixed in SP4 but apparently not the reason that causes the error in my instance. I use ASP, with ADO to open the database and retrieve the results using connection.execute, it seems to produce errors in about 4 different places and only randomly there is no reason that i can see. I assume a piece of data in one of my tables (these 4 places use different tables) is corrupt although i cant find the corruption. I also dont use any Float type variables in this database. I am at a loss to explain it, i even have debugging routines to dump the SQL statement being executed and this can not find any fault and runs perfectly when i run it in either Enterprise Manager or Query Analyser. For example: SELECT *, dbo.Random_Integer(2, 3) as GN FROM FH_FHChars WHERE VisibleStealthed = 0 and (Server = 0 or Server = 1) and CharacterId <> 185130 and (NPC <> 0 or LastActive<=15 or ProfessionID = 39 or MasterCharacterID = 185130) and ([Visible] <= 1 and [Visible] >= 0) and (QuestID = 0 or QuestID = 185130) and (Building = 938) ORDER BY MasterCharacterID, [NPC] _ FH_FHChars is a View _ SELECT RTRIM(dbo.FH_tblCharacters.CharacterName) AS CharacterName, dbo.FH_tblCharacters.FontColor, dbo.FH_tblCharacters.FontName, dbo.FH_tblCharacters.FontSize, dbo.FH_tblCharacters.Monster, dbo.FH_tblCharacters.Player, dbo.FH_tblCharacters.Looter, dbo.FH_tblCharacters.NPC, dbo.FH_tblCharacters.GroupID, RTRIM(dbo.FH_tblRace.Classification) AS Classification,CAST(DateDiff(Minute, ISNULL(LastActive,GetDate()), GetDate()) as int) as LastActive, ISNULL(dbo.FH_tblCharacters.Allegiance, 0) AS Allegiance, dbo.FH_tblCharacters.PKCount, dbo.FH_tblCharacters.LastAlter, dbo.FH_tblCharacters.System, dbo.FH_tblCharacters.MasterCharacterID, dbo.FH_tblCharacters.CharacterID, dbo.FH_tblCharacters.ProfessionID, dbo.FH_tblCharacters.PictureID, dbo.FH_tblCharacters.AltPictureID, dbo.FH_tblCharacters.AltPictureID2, dbo.FH_tblCharacters.Visible, dbo.FH_tblCharacters.Dead, RTRIM(dbo.FH_tblCharacters.UserPword) AS UserPWord, dbo.FH_tblCharacters.GuildID AS GuildID, RTRIM(ISNULL(dbo.FH_tblCharacters.Title, '')) AS Title, ISNULL(dbo.FH_tblCharacters.[Level], 1) AS [Level], RTRIM(ISNULL(dbo.FH_tblRace.RaceName, '')) AS RaceName, ISNULL(dbo.FH_tblRace.Diff, 1) AS Diff, RTRIM(ISNULL(dbo.FH_tblCharacters.GuildTitle, '')) AS GuildTitle, dbo.FH_tblCharacters.Bounty, dbo.FH_tblCharacters.AllowTame AS Tameable, dbo.FH_tblCharacters.Server, dbo.FH_tblCharacters.Building, dbo.FH_tblCharacters.MapX, dbo.FH_tblCharacters.MapY, dbo.FH_tblCharacters.GameID, dbo.FH_tblCharacters.QuestID, dbo.FH_tblCharacters.VisibleStealthed, dbo.FH_tblCharacters.VisibleDead, DateDiff(Minute, ISNULL(LastActive, GetDate()), GetDate()) as LA FROM dbo.FH_tblCharacters WITH (NOLOCK) LEFT OUTER JOIN dbo.FH_tblRace WITH (NOLOCK) ON dbo.FH_tblCharacters.RaceID = dbo.FH_tblRace.RaceID WHERE ForSale = 0 or SELECT Color, RTRIM(BuildingName) as BuildingName, Fund, Completed, BuildingTypeID, BuildingID, RTRIM(Img3) as I3, RTRIM(Img1) as I1, Dungeon, Allegiance, Locked, Hidden, Pickable, NPC, GotoBuildingID, CharacterID, Flying, Underwater, GuildID, DiscoveredBy, BuildingLevel, NoSiege FROM FH_BuildingsNOH WHERE MapX = 31 and MapY = 23 and GameID = 9 and (Server = 0 or Server = 1) and BuildingParentID=0 and (Hidden <= 1 and Hidden >= 0) and (DiscoveredSkill = 0 or DiscoveredBy <> 0) and (Flying <= 1) and (Underwater <= 1) ORDER BY NPC DESC, BuildingID None of these tables use floats. I wondered if anyone had anything they could add to this to aid me in getting these problems fixed, its kind of frustrating as the game runs pretty damn well except for this. There may be days where it doesnt happen then bam a day where you get 6 or 7 .... so its very hard to put your finger on. Thanks for any help anyone can offer and i'll gladly give any additional info if its required. You may be affected by the bug described in:
http://support.microsoft.com/kb/892840 There is a post-SP3 hotfix, but it's not included in SP4. Quote from the KB Article: "If you install Microsoft SQL Server Service Pack 4 (SP4), you must obtain a post-SP4 hotfix to have this fix re-applied." Razvan I am having a similar problem, but during merge replication. Many of the
replication sps at the subscriber are generating this same error message, of course none of the underlying tables use "floats". One sp in particular sp_MSenumchanges, will not blow up when run with the same parameters, I have looped to run it thousands of times. One note which may help you, we are only having this issue on our new subscribers, which are new Windows XP/ADO installs. My guess is the problem is somewhere buried in MDAC. Are you using the exact same version of MDAC in both applications? Show quote "Daniel Paull" wrote: > I periodically receive the following error message: > > A floating point exception occurred in the user process. Current transaction > is canceled > > I'm running SQL Server 2000 Standard Edition, sp4. > > I am running an Online Browser Based Game with SQL as my backend, i have 2 > such games the first is hosted on a shared SQL Server with my hosts and does > not encounter this error. The Database is a totally different one. > > The second database is hosted on a SQL Server installed on my Web Server > hosted by the same company and originally configured by them. > > The second database has this error at various times of the day, at first i > thought it was caused by "transaction deadlocks" i've researched the problem > extensively looking at all the KB articles and other people who have > experienced this problem. > > Several reasons for this error to occur were fixed in SP4 but apparently not > the reason that causes the error in my instance. > > I use ASP, with ADO to open the database and retrieve the results using > connection.execute, it seems to produce errors in about 4 different places > and only randomly there is no reason that i can see. > > I assume a piece of data in one of my tables (these 4 places use different > tables) is corrupt although i cant find the corruption. > > I also dont use any Float type variables in this database. > > I am at a loss to explain it, i even have debugging routines to dump the SQL > statement being executed and this can not find any fault and runs perfectly > when i run it in either Enterprise Manager or Query Analyser. > > For example: > > SELECT *, dbo.Random_Integer(2, 3) as GN FROM FH_FHChars WHERE > VisibleStealthed = 0 and (Server = 0 or Server = 1) and CharacterId <> 185130 > and (NPC <> 0 or LastActive<=15 or ProfessionID = 39 or MasterCharacterID = > 185130) and ([Visible] <= 1 and [Visible] >= 0) and (QuestID = 0 or QuestID = > 185130) and (Building = 938) ORDER BY MasterCharacterID, [NPC] > > _ FH_FHChars is a View _ > > SELECT RTRIM(dbo.FH_tblCharacters.CharacterName) AS CharacterName, > dbo.FH_tblCharacters.FontColor, dbo.FH_tblCharacters.FontName, > dbo.FH_tblCharacters.FontSize, > dbo.FH_tblCharacters.Monster, dbo.FH_tblCharacters.Player, > dbo.FH_tblCharacters.Looter, dbo.FH_tblCharacters.NPC, > dbo.FH_tblCharacters.GroupID, > RTRIM(dbo.FH_tblRace.Classification) AS Classification,CAST(DateDiff(Minute, > ISNULL(LastActive,GetDate()), GetDate()) as int) as LastActive, > ISNULL(dbo.FH_tblCharacters.Allegiance, 0) AS Allegiance, > dbo.FH_tblCharacters.PKCount, dbo.FH_tblCharacters.LastAlter, > dbo.FH_tblCharacters.System, > dbo.FH_tblCharacters.MasterCharacterID, dbo.FH_tblCharacters.CharacterID, > dbo.FH_tblCharacters.ProfessionID, > dbo.FH_tblCharacters.PictureID, > dbo.FH_tblCharacters.AltPictureID, dbo.FH_tblCharacters.AltPictureID2, > dbo.FH_tblCharacters.Visible, > dbo.FH_tblCharacters.Dead, > RTRIM(dbo.FH_tblCharacters.UserPword) AS UserPWord, > dbo.FH_tblCharacters.GuildID AS GuildID, > RTRIM(ISNULL(dbo.FH_tblCharacters.Title, '')) AS > Title, ISNULL(dbo.FH_tblCharacters.[Level], 1) AS [Level], > RTRIM(ISNULL(dbo.FH_tblRace.RaceName, > '')) AS RaceName, ISNULL(dbo.FH_tblRace.Diff, 1) AS > Diff, RTRIM(ISNULL(dbo.FH_tblCharacters.GuildTitle, '')) AS GuildTitle, > dbo.FH_tblCharacters.Bounty, > dbo.FH_tblCharacters.AllowTame AS Tameable, dbo.FH_tblCharacters.Server, > dbo.FH_tblCharacters.Building, > dbo.FH_tblCharacters.MapX, dbo.FH_tblCharacters.MapY, > dbo.FH_tblCharacters.GameID, dbo.FH_tblCharacters.QuestID, > dbo.FH_tblCharacters.VisibleStealthed, > dbo.FH_tblCharacters.VisibleDead, DateDiff(Minute, ISNULL(LastActive, > GetDate()), GetDate()) as LA > FROM dbo.FH_tblCharacters WITH (NOLOCK) LEFT OUTER JOIN > dbo.FH_tblRace WITH (NOLOCK) ON > dbo.FH_tblCharacters.RaceID = dbo.FH_tblRace.RaceID WHERE ForSale = 0 > > > or > > SELECT Color, RTRIM(BuildingName) as BuildingName, Fund, Completed, > BuildingTypeID, BuildingID, RTRIM(Img3) as I3, RTRIM(Img1) as I1, Dungeon, > Allegiance, Locked, Hidden, Pickable, NPC, GotoBuildingID, CharacterID, > Flying, Underwater, GuildID, DiscoveredBy, BuildingLevel, NoSiege FROM > FH_BuildingsNOH WHERE MapX = 31 and MapY = 23 and GameID = 9 and (Server = 0 > or Server = 1) and BuildingParentID=0 and (Hidden <= 1 and Hidden >= 0) and > (DiscoveredSkill = 0 or DiscoveredBy <> 0) and (Flying <= 1) and (Underwater > <= 1) ORDER BY NPC DESC, BuildingID > > None of these tables use floats. > > I wondered if anyone had anything they could add to this to aid me in > getting these problems fixed, its kind of frustrating as the game runs pretty > damn well except for this. > > There may be days where it doesnt happen then bam a day where you get 6 or 7 > ... so its very hard to put your finger on. > > Thanks for any help anyone can offer and i'll gladly give any additional > info if its required. Does anybody have this hotfix, how can I get it?
Show quote "Daniel Paull" wrote: > I periodically receive the following error message: > > A floating point exception occurred in the user process. Current transaction > is canceled > > I'm running SQL Server 2000 Standard Edition, sp4. > > I am running an Online Browser Based Game with SQL as my backend, i have 2 > such games the first is hosted on a shared SQL Server with my hosts and does > not encounter this error. The Database is a totally different one. > > The second database is hosted on a SQL Server installed on my Web Server > hosted by the same company and originally configured by them. > > The second database has this error at various times of the day, at first i > thought it was caused by "transaction deadlocks" i've researched the problem > extensively looking at all the KB articles and other people who have > experienced this problem. > > Several reasons for this error to occur were fixed in SP4 but apparently not > the reason that causes the error in my instance. > > I use ASP, with ADO to open the database and retrieve the results using > connection.execute, it seems to produce errors in about 4 different places > and only randomly there is no reason that i can see. > > I assume a piece of data in one of my tables (these 4 places use different > tables) is corrupt although i cant find the corruption. > > I also dont use any Float type variables in this database. > > I am at a loss to explain it, i even have debugging routines to dump the SQL > statement being executed and this can not find any fault and runs perfectly > when i run it in either Enterprise Manager or Query Analyser. > > For example: > > SELECT *, dbo.Random_Integer(2, 3) as GN FROM FH_FHChars WHERE > VisibleStealthed = 0 and (Server = 0 or Server = 1) and CharacterId <> 185130 > and (NPC <> 0 or LastActive<=15 or ProfessionID = 39 or MasterCharacterID = > 185130) and ([Visible] <= 1 and [Visible] >= 0) and (QuestID = 0 or QuestID = > 185130) and (Building = 938) ORDER BY MasterCharacterID, [NPC] > > _ FH_FHChars is a View _ > > SELECT RTRIM(dbo.FH_tblCharacters.CharacterName) AS CharacterName, > dbo.FH_tblCharacters.FontColor, dbo.FH_tblCharacters.FontName, > dbo.FH_tblCharacters.FontSize, > dbo.FH_tblCharacters.Monster, dbo.FH_tblCharacters.Player, > dbo.FH_tblCharacters.Looter, dbo.FH_tblCharacters.NPC, > dbo.FH_tblCharacters.GroupID, > RTRIM(dbo.FH_tblRace.Classification) AS Classification,CAST(DateDiff(Minute, > ISNULL(LastActive,GetDate()), GetDate()) as int) as LastActive, > ISNULL(dbo.FH_tblCharacters.Allegiance, 0) AS Allegiance, > dbo.FH_tblCharacters.PKCount, dbo.FH_tblCharacters.LastAlter, > dbo.FH_tblCharacters.System, > dbo.FH_tblCharacters.MasterCharacterID, dbo.FH_tblCharacters.CharacterID, > dbo.FH_tblCharacters.ProfessionID, > dbo.FH_tblCharacters.PictureID, > dbo.FH_tblCharacters.AltPictureID, dbo.FH_tblCharacters.AltPictureID2, > dbo.FH_tblCharacters.Visible, > dbo.FH_tblCharacters.Dead, > RTRIM(dbo.FH_tblCharacters.UserPword) AS UserPWord, > dbo.FH_tblCharacters.GuildID AS GuildID, > RTRIM(ISNULL(dbo.FH_tblCharacters.Title, '')) AS > Title, ISNULL(dbo.FH_tblCharacters.[Level], 1) AS [Level], > RTRIM(ISNULL(dbo.FH_tblRace.RaceName, > '')) AS RaceName, ISNULL(dbo.FH_tblRace.Diff, 1) AS > Diff, RTRIM(ISNULL(dbo.FH_tblCharacters.GuildTitle, '')) AS GuildTitle, > dbo.FH_tblCharacters.Bounty, > dbo.FH_tblCharacters.AllowTame AS Tameable, dbo.FH_tblCharacters.Server, > dbo.FH_tblCharacters.Building, > dbo.FH_tblCharacters.MapX, dbo.FH_tblCharacters.MapY, > dbo.FH_tblCharacters.GameID, dbo.FH_tblCharacters.QuestID, > dbo.FH_tblCharacters.VisibleStealthed, > dbo.FH_tblCharacters.VisibleDead, DateDiff(Minute, ISNULL(LastActive, > GetDate()), GetDate()) as LA > FROM dbo.FH_tblCharacters WITH (NOLOCK) LEFT OUTER JOIN > dbo.FH_tblRace WITH (NOLOCK) ON > dbo.FH_tblCharacters.RaceID = dbo.FH_tblRace.RaceID WHERE ForSale = 0 > > > or > > SELECT Color, RTRIM(BuildingName) as BuildingName, Fund, Completed, > BuildingTypeID, BuildingID, RTRIM(Img3) as I3, RTRIM(Img1) as I1, Dungeon, > Allegiance, Locked, Hidden, Pickable, NPC, GotoBuildingID, CharacterID, > Flying, Underwater, GuildID, DiscoveredBy, BuildingLevel, NoSiege FROM > FH_BuildingsNOH WHERE MapX = 31 and MapY = 23 and GameID = 9 and (Server = 0 > or Server = 1) and BuildingParentID=0 and (Hidden <= 1 and Hidden >= 0) and > (DiscoveredSkill = 0 or DiscoveredBy <> 0) and (Flying <= 1) and (Underwater > <= 1) ORDER BY NPC DESC, BuildingID > > None of these tables use floats. > > I wondered if anyone had anything they could add to this to aid me in > getting these problems fixed, its kind of frustrating as the game runs pretty > damn well except for this. > > There may be days where it doesnt happen then bam a day where you get 6 or 7 > ... so its very hard to put your finger on. > > Thanks for any help anyone can offer and i'll gladly give any additional > info if its required. |
|||||||||||||||||||||||