82 messaggi dal 22 luglio 2011
www.wincode.it
Salve a tutti,
sto sviluppando una piccola applicazione web utilizzando ASP.NET che fa uso di database SQL Server 2012 (Standard Edition).
L'applicazione e SQL Server girano correttamente in locale, tuttavia non vi è alcun problema. Recentemente, però, visualizzando i record attraverso SQL Server Management Studio, mi sono accorto che in alcune tabelle, inserendo un nuovo record, l'indice della chiave primaria fa un salto di 1000; ad esempio, se l'attuale indice è 15, inserendo un nuovo record l'indice va a 1001.
Questo accade anche se non viene eliminato alcun record ed anche effettuando un reseed il problema persiste.
Ho letto su altri forum che può trattarsi di un bug di SQL Server 2012, ma personalmente prima di effettuare altre operazioni volevo conoscere il vostro parere in merito a questa situazione.

Se può servire, utilizzo Entity Framework per effettuare tutte le operazioni sul database.

Vi ringrazio anticipatamente.
Modificato da Best il 03 gennaio 2013 14.40 -

http://www.wincode.it - CEO & Founder
1.959 messaggi dal 27 luglio 2005
Contributi
salve,
per favore posta il DDL della tabella coinvolta...
saluti

Andrea Montanari
http://www.hotelsole.com - http://www.hotelsole.com/asql/index.php
82 messaggi dal 22 luglio 2011
www.wincode.it
Ciao Andrea,
grazie per l'interessamento. In realtà il problema si manifesta su diverse tabelle, comunque, come da te richiesto, ho generato il DDL di una delle tabelle interessate:

/****** Object:  Table [dbo].[ArticoloTable]    Script Date: 04/01/2013 12.31.30 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[ArticoloTable](
  [ID] [int] IDENTITY(1,1) NOT NULL,
  [Autore] [nvarchar](50) NULL,
  [Titolo] [nvarchar](50) NULL,
  [DataPost] [datetime] NULL,
  [Content] [nvarchar](max) NULL,
 CONSTRAINT [PK_ArticoloTable] PRIMARY KEY CLUSTERED 
(
  [ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO


Modificato da Best il 04 gennaio 2013 13.37 -

http://www.wincode.it - CEO & Founder
1.959 messaggi dal 27 luglio 2005
Contributi
salve,
ok, malgrado questa probabilmente dovesse essere una "side feature" della versione 2012 in modo da aumentare la scalabilita' del prodotto con la preallocazione di un "numero" di slot di identity, pare sia stato successivamente riconosciuto come "bug" il 4 ottobre 2012 visto che in effetti ha causato svariati mal di stomaco a molti utilizzatori...
cio' nonostante, gli avvisi circa la non stretta sequenzialita' garantita sono noti da sempre, e non si dovrebbe utilizzarne la funzionalita' nel caso sia essa invece richiesta (quindi da non usare, ad esempio, per la progressione di fatturazione come invece spesso ho visto fare)...
al momento, riconosciuto come bug, il problema resta "aperto", e pare anche la funzionalita' SEQUENCE ne sia afflitta, vedi comunque https://connect.microsoft.com/SQLServer/feedback/details/739013/alwayson-failover-results-in-reseed-of-identity#details

saluti

Andrea Montanari
http://www.hotelsole.com - http://www.hotelsole.com/asql/index.php

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.