de: (1) Reindex [Microsoft OLE DB Provider for SQL Server] Failed executing: alter index RN_QOS_DATA_0001_Idx0 on RN_QOS_DATA_0001 rebuild with (online=off, fillfactor=0) : Fillfactor 0 is not a valid percentage; fillfactor must be between 1 and 100.

book

Article ID: 35072

calendar_today

Updated On:

Products

DX Infrastructure Management NIMSOFT PROBES

Issue/Introduction

Problem:

The data_engine.log will show these error messages:
 
Jun 16 08:00:01:760 [1476] de: Reindex - starting for RN tables 
Jun 16 08:00:02:541 [1476] de: [Admin] Reindex - 1 errors 
Jun 16 08:00:02:541 [1476] de: (1) Reindex [Microsoft OLE DB Provider for SQL Server] Failed executing: alter index RN_QOS_DATA_0001_Idx0 on RN_QOS_DATA_0001 rebuild with (online=off, fillfactor=0) : Fillfactor 0 is not a valid percentage; fillfactor must be between 1 and 100.

Resolution:

This is caused by a missing argument in the stored procedure spn_de_TableMaintenance in SQL Server Nimsoft SLM databases . This can be fixed by running the following SQL Scipt against your Nimsoft SLM database. You can use SQL Server Management Studio to run the script. Please make sure that  USE NimsoftSLM statement reflects your Nimsoft SLM database:
 
Note: The one highlighted in red color is the missing argument
 
 
 -- Start of Script

USE [NimsoftSLM]

GO

/****** Object: StoredProcedure [dbo].[spn_de_TableMaintenance] Script Date: 07/11/2011 12:55:13 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER OFF

GO

ALTER proc [dbo].[spn_de_TableMaintenance]

@TableName sysname = null, -- if null, all tables

@IndexName sysname = null, -- if null, proc decide which index needs maintenance

@MaintenanceMode int = 0, -- if 0, proc decides type of maintenance

@OnlineMode int = 0, -- if 0, proc choses online mode based on dbms edition

@LowFragPctLevel int = 5,

@HighFragPctLevel int = 30,

@LogLevel int = 0

as begin

declare @Msg varchar(max), @StartTime datetime

select @StartTime = getdate(), @Msg = 'spn_de_TableMaintenance(' + isnull(@TableName,'') + ','+ isnull(@IndexName,'') + ',' + isnull(convert(varchar(max),@MaintenanceMode),'null') + ',' + isnull(convert(varchar(max),@OnlineMode),'null') + ')'

if (@LogLevel >= 5) exec spn__LogEvent @Prefix = '>', @Msg = @Msg

declare

@lTableName sysname,

@lStatus int

select @lStatus = 0

if (@TableName is null) select @TableName = 'RN_QOS_DATA_%'

declare c1 cursor for select name from sys.tables where name like @TableName

open c1

fetch c1 into @lTableName

while (@@FETCH_STATUS = 0) begin

exec @lStatus = spn_de_IndexMaintenance @lTableName, @IndexName, @MaintenanceMode, @OnlineMode,@LowFragPctLevel,@HighFragPctLevel,null, @LogLevel

fetch c1 into @lTableName

end

close c1

deallocate c1

if (@LogLevel >= 4) exec spn__LogEvent @Prefix = '<', @Msg = @Msg, @[email protected]

return @lStatus

end

GO

 -- End of Script

Environment

Release: CNMSPP99000-7.6-Unified Infrastructure Mgmt-Server Pack-- On Prem
Component: