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

HomeHomeDevelopment and...Development and...Open Core Testi...Open Core Testi...Tabs - TabPath Column Missing after 6.2 Upgrade?Tabs - TabPath Column Missing after 6.2 Upgrade?
Previous
 
Next
New Post
2/20/2012 1:35 PM
 

I've just upgraded a test server to 6.2.  The upgrade went fine - no errors.

Now I'm trying to add a module to a page and I'm getting an error telling me that TabPath is an invalid column.  Sure enough - if I look at the TABS table - that column is no longer there.

Thoughts?

~ Greg

 
New Post
2/20/2012 3:13 PM
 
If I add that column back to the TABS table - I can add the module, but then I get errors because the TABS view derives the TabPath from the TabName. Deleting the TabPath column then gets me back on track. Odd.
 
New Post
2/20/2012 6:08 PM
 

I see that this change is listed in the WIKI, but it still is causing errors for me.  Perhaps my upgrade wasn't as successful as it reported to be.

This change should still allow to add a module to a page, right?  Mine doesn't.  I can add the module if I add the TabPath column back to the TABS table.

Changes to Tab Hierarchy Management»

DotNetNuke 6.2.0 introduces changes to how the Tab (Page) Hierarchy is managed. Due to the limitations of earlier versions of SQL Server, prior to these changes, the business layer managed the handling of the tab hierarchy. Whenever a tab was created or moved in the hierarchy, there was a lot of calculation to calculate the effect on other tabs and update them accordingly. 

In a large site like this one - if a tab with a large number of descendants is updated then every descendant is updated so that its "Level" and "TabPath" can be updated in the database.

SQL Server 2005 introduced the concept of "Common Table Expressions" or CTEs, which allow you to create recursive SQL scripts with fairly decent performance. Since we now require at least SQL Server 2005 as our base version of SQL Server, we have removed the Level and TabPath columns from the Tabs table and instead calculate them "on-the-fly" in the Tabs View.

This, in turn means that we don't have to do all the manipulation in the business layer in order to manage these properties.

In addition, we pushed more of the logic for creating and moving tabs into more explicit stored procedures e.g. MoveTabBefore, MoveTabAfter etc. A few methods in TabController that are no longer necessary have been deprecated and a few new ones created.

To give an example of the effect of these changes - consider a tab with 20 child tabs. To move one of those child tabs (in the Page Management module) to the top triggered 166 calls to the database in 6.1.2. In 6.2.0 this move triggers 5 calls to the database, and the guts of the work is done in a single stored procedure MoveTabBefore.

For the most part this change does not affect 3rd party developers unless they are manipulating pages, but the performance (and reliability) of moving tabs is now enhanced significantly.

 
New Post
2/21/2012 3:26 AM
 
Your'e problem is explained here: http://www.dotnetnuke.com/Resources/Wiki/Page/DotNetNuke-6-2-Developer-Quick-Start.aspx#Changes_to_Tab_Hierarchy_Management_10
The tabs table has been changed with the introduction of 6.2.
 
New Post
2/21/2012 9:09 AM
 
Hello Greg, are you talking about adding any module or a particular module -i've tested with a number of modules and cannot recreate it. There is a possibility that a 3rd party module might do direct database access and expect that column but it will still add to a page, just not work (this is expected as we do not guarantee database structure, just that the API will maintain binary compatibility). Please check under admin->event viewer to see if any errors are logged, and also check the database logs to see if any errors were logged during upgrade (http://www.dotnetnuke.com/Resources/Wiki/Page/Diagnosing-database-errors.aspx)

Buy the new Professional DNN7: Open Source .NET CMS Platform book Amazon US
 
Previous
 
Next
HomeHomeDevelopment and...Development and...Open Core Testi...Open Core Testi...Tabs - TabPath Column Missing after 6.2 Upgrade?Tabs - TabPath Column Missing after 6.2 Upgrade?


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