Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeGetting StartedGetting StartedInstalling DNN ...Installing DNN ...Important: DNN Developers please read: Installation issues 4.4.0 error - Discussion and findingsImportant: DNN Developers please read: Installation issues 4.4.0 error - Discussion and findings
Previous
 
Next
New Post
11/23/2007 8:53 AM
 

Hi

Just running some tests and a few things I have noticed wth installation errors with Dot Net Nuke and the infamous 4.4.0 errors that seem to crop up a lot

I was trying to find out why some installations it fails with

[Installing Database - Version 4.4.0...Upgrading Database to Version ERROR: See c:\.....\SqlDataProvider\04.04.00.log for more information...FAILURE 400 - Conversion from string "ERROR: See c:inetpubwwwrootdnn2P" to type 'Integer' is not valid]

And sometimes it installs fine.

(Testing with 4.7)

Firstly it installs fine when I set the db to be Latin1_General_CI_AS [Server collation also Latin1_General_CI_AS]

It fails however when the collation is Sql_Latin1_General_CI_AS [Server collation Latin1_General_CI_AS]

 

Later then I tried to copy the installation that did work out to a development server using the enterprise manager export tools and I started to notice a few strange things.

The server instance to which I was copying was Sql_Latin1_General_CI_AS

About 70 of the stored procs would not copy across.

When I looked closer I noticed there are loads of errors in the Latin1_General_CI_AS version installation (the one that did install), loads of small things mainly characters in stored procs in the incorrect case.

Take for example the stored procedure dbo.[UpdateUser]

UPDATE dbo.Users
SET
    FirstName = @FirstName,
    LastName = @LastName,
    Email = @Email,
    DisplayName = @DisplayName,
    UpdatePassword = @UpdatePassword
WHERE  UserId = @UserId
AND UserID = 1

Notice UserId and UserID - the column name is UserID

When you try to copy this database the second server, the creation of this stored proc fails (like many others) with the error [UserId does not exist] (which is correct, it does not, UserID does though)

It seems Latin1_General_CI_AS is case insensitive when it comes to creating stored procs (the tables are correct, for example its UserID in the tables).

Sql_Latin1_General_CI_AS on the other hand is case sensitive

I also tried creating a Latin1_General_CI_AS db on the development server but it still fails. It appears the entire sql server instance needs to be Latin1_General_CI_AS, its not good enough that just the one db is set this way.

If the server is Sql_Latin1_General_CI_AS (I've tried several) I can not get it to install.

SqlDataProvider Files

Unfortunately these errors are in the sqldataprovider files themselves.

For example 04.00.04

Line 1096: WHERE  UserId = @UserId

There are countless examples where the case used in the sql code - stored proc, view, function etc is different from the case used in the db table.

And on databases where this is a problem, the installation fails.

At least thats what I've been finding.

I hope this information is useful because these problems are causing deployment issues for myself and many others it seems.

The case in the stored procs should match those of the tables. If the underlying sql scripts on DNN are not being written strictly they should be cleaned up as its causing issues.

 

Regards

J




 

 

 
New Post
11/24/2007 4:48 AM
 

please log your observations into the public issue tracker at support.dotnetnuke.com, thank you.


Cheers from Germany,
Sebastian Leupold

dnnWerk - The DotNetNuke Experts   German Spoken DotNetNuke User Group

Speed up your DNN Websites with TurboDNN
 
New Post
11/24/2007 10:53 AM
 

This is a known issue and does not require a new Gemini entry.  DotNetNuke does not support case sensitive collations.


Joe Brinkman
DNN Corp.
 
New Post
11/24/2007 12:13 PM
 

I would expect that Sql_Latin1_General_CI_AS is expected to be case insensitive as well?


Cheers from Germany,
Sebastian Leupold

dnnWerk - The DotNetNuke Experts   German Spoken DotNetNuke User Group

Speed up your DNN Websites with TurboDNN
 
New Post
11/24/2007 12:14 PM
 

there are already floating issues about this around in gemini. None of which can be solved.

To elaborate on Joe's statement: We've investigated the issue and we found that changing the sql is not good enough. We would also need to fix all info object classes to reflect proper casing. In itself this could be done, however, this would create an incompatibility with c# modules (c# is case sensitive)


Erik van Ballegoij, Former DNN Corp. Employee and DNN Expert

DNN Blog | Twitter: @erikvb | LinkedIn: Erik van Ballegoij on LinkedIn

 
Previous
 
Next
HomeHomeGetting StartedGetting StartedInstalling DNN ...Installing DNN ...Important: DNN Developers please read: Installation issues 4.4.0 error - Discussion and findingsImportant: DNN Developers please read: Installation issues 4.4.0 error - Discussion and findings


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out