Developer forum

Forum » Development » SQL Server 2012

SQL Server 2012

Aki Ruuskanen
Reply
Hi,

Does anyone know if there are any issues running DW on SQL Server 2012?

Regards / Aki
 

Replies

 
Nicolai Høeg Pedersen
Reply
This post has been marked as an answer

Hi Aki

It has not yet been tested, but I am confident that you will not experience any issues in that regard. You can always switch compatibility mode of the database to 2008 version if you experience problems.

Also be aware that it can be an issue to backup a database from 2012 and restore it to 2008 if you run into issues and have to downgrade.

But 2012 is not officially supported yet, and is not yet in the roadmap. I will have official support for SQL-Server 2012 discussed, so it can be part of the roadmap, maybe for 8.2.

If you go ahead, please let us know about your experiences.
Votes for this answer: 0
 
Aki Ruuskanen
Reply
Everything except creating new pages works well with 2012. Creating new pages takes very long time. 

Do you have any ideas what the reason would be. This occurs in a clean installation. We have also tried the compatibility mode.

Regards / Aki
 
Aki Ruuskanen
Reply
 Hi Nicolai,

Do you have any clue of what could be the cause of not beeing able to create new pages when using SQL 2012 (even in compatibility mode)? 

Regards / Aki
 
Aki Ruuskanen
Reply
When I try to copy a page I get the following strange error.:


 [SqlException (0x80131904): Incorrect syntax near '44447'.]
System.Data.Common.DbDataAdapter.UpdatedRowStatusErrors(RowUpdatedEventArgs rowUpdatedEvent, BatchCommandInfo[] batchCommands, Int32 commandCount) +2227656
System.Data.Common.DbDataAdapter.UpdatedRowStatus(RowUpdatedEventArgs rowUpdatedEvent, BatchCommandInfo[] batchCommands, Int32 commandCount) +75
System.Data.Common.DbDataAdapter.Update(DataRow[] dataRows, DataTableMapping tableMapping) +3431
System.Data.Common.DbDataAdapter.UpdateFromDataTable(DataTable dataTable, DataTableMapping tableMapping) +66
System.Data.Common.DbDataAdapter.Update(DataSet dataSet, String srcTable) +386
Dynamicweb.Content.StructureChange.CopyPage(Int32& fromPageID, String& toLanguage, Int32& motherPage, Boolean& copyParagraphs, Boolean& copySubPages, Int32 copyID, Int32 sortVal, String newPageID, String copyTime) +2099
Dynamicweb.Admin.Page_Copy.Page_Load(Object sender, EventArgs e) +1017
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3048
 
Rasmus Pedersen
Reply

I can confirm this issue, when saving to the Page table, I get this error too. Just with the number 44446 instead.

I am running SQLExpress 2012

 
Morten Snedker
Reply

Seems it is discontinued functionality that causes a trigger to fail.

http://technet.microsoft.com/en-us/library/ms144262.aspxRAISERROR in the format RAISERROR integer 'string' is discontinued.

So that is noted. Thanks for the heads-up.

 

Regards /Snedker

 
Magnus Holmberg
Reply

Do you guys have any plans supporting 2012 in the near future?

In that case approximately when and will it also be fixed on dw7 versions?

 

Regards / Magnus

 
Imar Spaanjaars Dynamicweb Employee
Imar Spaanjaars
Reply

Hi Magnus,

 

>> Seems it is discontinued functionality that causes a trigger to fail.

 

Yeah, that's indeed the case. Deleting all the triggers from the database seems to do the trick. We did some testing on this in the US and so far everything seems to work fine without the triggers....

 

Take a look here: http://www.sqlservercentral.com/Forums/Topic285605-5-1.aspx to find a quick way to delete all triggers from a database. Use at your own risk though. If this is for a production site, I would wait for an official 2012 compatible database.

 

Imar

 
Kevin Steffer
Reply

I start to meet customers with SQL Server 2012 - had to tell them that it's not compatible yet.

 
Nicolai Høeg Pedersen
Reply

Hi Kevin

 

It is in the Works, and we plan to have it out officially before Christmas.

 

I run locally only SQL-Server 2012 and IIS 8 - it Works with the change Imar mentions, both will have official support very soon - we just need to run a complete set of tests and create a database for SQL 2012 before going official.

 

//Nicolai

 
Paul Sørensen
Reply

I get the error when trying to save a new paragraph in DW 8.2.1.0 running on SQL Server Express 2012 and IIS8.

 

Serverfejl i programmet '/'.

Incorrect syntax near '44446'.

Beskrivelse: Der opstod en undtagelse, der ikke blev behandlet, under udførelse af den aktuelle webanmodning. Se staksporingen for at få flere oplysninger om fejlen, og hvor den kom fra i koden. 

Detaljer om undtagelse: System.Data.SqlClient.SqlException: Incorrect syntax near '44446'.

Kildefejl: 

Der blev oprettet en undtagelse, der ikke blev behandlet,  under kørsel af den aktuelle webanmodning. Du kan finde oplysninger om undtagelsens oprindelse og placering ved hjælp af nedenstående staksporing af undtagelser.

Staksporing: 

[SqlException (0x80131904): Incorrect syntax near '44446'.]
   System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +388
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +688
   System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +4403
   System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout) +2755286
   System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite) +527
   System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +290
   Dynamicweb.Database.ExecuteNonQuery(String sql, Int32 commandTimeout, Boolean useTransaction, String database, IDbConnection connection) +1358
   Dynamicweb.Database.ExecuteNonQuery(String sql) +36
   Dynamicweb.Admin.ParagraphEdit.SaveParagraph() +2514
   Dynamicweb.Admin.ParagraphEdit.Page_Load(Object sender, EventArgs e) +3368
   System.Web.UI.Control.LoadRecursive() +71
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3178


 

 
Imar Spaanjaars Dynamicweb Employee
Imar Spaanjaars
Reply

Hi Paul,

 

Check my previous post in this tread. SQL Server 2012 is not supported yet. But if you want to continue, you need to delete all the triggers from the database first.

 

Cheers,

 

Imar

 
Paul Sørensen
Reply

Hi Imar,

Yeah I read that, but Nicolai stated they had planned support for SQL Server 2012 before Christmas.
Any news on the subject as we have entered February 2013?

Regards
Paul

 

 
Nicolai Høeg Pedersen
Reply

Hi Paul

 

Yes - it is being finished as we speak. But not released yet though. Cannot say anything precise on ETA since it has to pass testing first.

 

Saw testing reports this morning with only a couple of minor Things left, so it should be soon.

 

(BTW - running SQL-Server 2012 and IIS8 myself with no issues with the changes Imar has written above)

 

BR Nicolai

 
Frode Hestad
Reply

Has there been any development on this issue since February.

I too have a customer which is using SQL 2012 and they are experiencing the above mentioned problems.  

 

Regards

Frode

 
Jeppe Eriksson Agger Dynamicweb Employee
Jeppe Eriksson Agger
Reply

Hi Frode,

 

Yes, there has been some Development regarding SQL 2012 support. With the release of 8.2.2.3, you should be able to run DW on SQL 2012 without any issues. It's not officially announced though. We have, however, not made a new Default Empty Data yet. We will release a new Default Empty Data along with official support for SQL 2012 with the release of 8.2.3.0 in May.

 

- Jeppe

 
Anders Ebdrup
Reply

Hi Nicolai

 

I have experienced problems with the indexing process on IIS 8 otherwise SQL-server 2012 is working great

 

Best regards,

Anders

 
Remi Muller
Reply

Hi Jeppe,

Should a new "Default Empty Data" still be released for sql 2012 databases?
Because from the downloads DefaultEmptyData8SQL.zip  it is dated from 07-06-2012.

 

 
 

 

 
Ton Martens
Reply

Same here. Customer is running W2012 with SQL 2012. I will give them feedback that it's currently not supported.

However, I'm a bit puzzled by the suggestion to delete the database triggers. Aren't these triggers essential for the operation of DW?

 

Thank,

Ton

 
Morten Snedker
Reply

Hi,

 

Remi: yes, there will be a default empty database for SQL2012. I'll kick some legs for answers - I'm not aware of the status myself.

 

Ton: Not essential triggers. If you were to delete these triggers, you should be aware of the consequence, and make sure that you handle the effect. For instance re-writing them to match SQL2012. Deleting them was mentioned as a work-around.

 

Regards /Snedker

 
Jeroen Elias
Reply

(Morten:) If I script the DefaultEmptyData database, there seems to be no trigger at all.
Am I right?
Could it be that this Trigger logic is moved to the code-behind ?

Regards,
    Jeroen Elias

 
Morten Snedker
Reply

Hi Jeroen,

No, that could not be. :-)

 

If you download the default database from our Developer site, you'll find 119 triggers. ;-)

I am not aware where you've obtained the database you are referring to...

 

Check with:

 

USE Database_Name
SELECT * FROM sys.triggers

 

 

Regards /Snedker

 
Jeroen Elias
Reply

I'm afraid you are right. Please discard my comments ;-(

 

 
Jeroen Elias
Reply

But recently I upgraded one solution from DW7 to the latest 8.3.1.11
In that database, all triggers are gone.
I suspect during the upgrade from DW7 these triggers are removed by the update procedure.

 
Nicolai Høeg Pedersen
Reply

Yes, some triggers are removed. They are from good old days making sure of cascading updates/deletes. That is handled by the database now, or by the code deleting things.

This change was part of the behavior change of making Dynamicweb 2012 compaible. We removed the problematic triggers in the update and the new application takes care of the cascades instead.

Nicolai

 
Ton Martens
Reply

Our customer experiences the 44446 error on SQL2012. After that they configured SQL2012 to run in 2008 compatibility mode, however, the error remains. Is that to be expected?

Thanks

 
Nicolai Høeg Pedersen
Reply

Hi Ton

Yes.

Run this piece of code against the database:

SELECT 'drop trigger ' + name , * FROM sys.objects WHERE type_desc = 'SQL_TRIGGER'

Make sure you run on 8.2+ - it will not require the triggers.

BR Nicolai

 
Mikkel Toustrup Olsen
Reply

Hey Umar,

I get the same SQL error as mentioned above: 'incorrect syntax near 44446', however I am not able to find the database triggers - the folder in the database is empty. Any workaround on this?

 

/MikkelTO

 
Imar Spaanjaars Dynamicweb Employee
Imar Spaanjaars
Reply

Take a look under the Triggers node for each table; they might be there. Or run:

SELECT 'drop trigger ' + name , * FROM sys.objects WHERE type_desc = 'SQL_TRIGGER'

to get the code to delete the existing triggers.

Cheers,

Imar

 

You must be logged in to post in the forum