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

HomeHomeUsing DNN Platf...Using DNN Platf...Performance and...Performance and...Slow Page CopyingSlow Page Copying
Previous
 
Next
New Post
2/2/2011 8:06 PM
 
Hi,

We have a portal with 349 tabs and DNN version is 5.6.0, when copying a page the operation sometimes either takes a very long time (1-2 minutes) or it fails (the progress bar is hidden and the user is never redirected to the copied page - the page is created though and can be located on the Pages page, but it's not clear if everything got copied properly or not).

I've found that the long time it takes to copy a page mainly has to do with the:
1. number of modules that are being copied by reference (Reference selected amongst New / Copy / Reference)
2. number of settings that the modules under 1) have
3. the number of pages that are referenced by the modules that are being copied

I've performed a test on a local computer copying one page that has 5 Rollover Image modules, 1 CTV Flash Banner Rotator and 9 other modules (probably all HTML/Text).

Rollover Image and the CTV Flash Banner Rotator modules are copied with Reference selected, the rest are copied with Copy selected.

Page copying took 30 seconds; out of that 9 non-reference (copy) modules took ~1.5 seconds, 5 Rollover Image modules took ~12 seconds, 1 CTV Flash Banner Rotator took ~8.5 seconds, and the rest was spent on other things.

For modules that are copied by referencing them, the time it takes is a function of the number of pages that reference the module (including those in the recycle bin!) and the number of settings for that module:
time = basic_copy_time * num_of_pages * num_of_module_settings
 
The Rollover Image module has 4 settings, an they’re referenced by about 272 pages. If the generic time to copy is 0.0025 seconds the time it actually takes for one module ends up being:
time = 0.0025 sec * 272 * 4 = 2.72 sec
 
For 5 Rollover Images the time goes to 13.6 sec.
 
The CTV Flash Banner Rotator has 18 settings and is referenced on 269 pages.
time = 0.0025 sec * 269 * 18 = 12.1 sec
 
The number of pages in a portal also influences the time it takes to copy other modules as well, it just doesn’t depend on the number of module settings:
time = basic_copy_time * num_of_pages

What happens at the database level is that for each module on the page that is being copied there is a call to:
exec dbo.GetAllTabsModulesByModuleID @ModuleID= X

And then for each tab there is a call like this:
exec dbo.UpdateTabModuleVersion @TabModuleID=71973,@VersionGuid='25B220FE-A960-4B00-AF4D-11B42822D7D0'

Which is actually actually executes an UPDATE statement similar to this:
UPDATE dbo.TabModules          SET    VersionGuid = @VersionGuid      WHERE  TabModuleID = @TabModuleID

So for a module referenced by 300 pages tat type of an UPDATE statement gets executed 300 times.

For modules that are copied by reference though this is repeated X times depending on the amount of module settings!

For example, Rollover Image module has 4 settings, so the mentioned UPDATE statement gets executed 4*300 = 1200 time (example of 300 pages).

The CTV Flash Banner Rotator has 18 setting so the UPDATE statement gets executed 18*300 times.

***

Does anyone know if this is a known issue and if there is a fix?

I imagine that repeating the UPDATE statement for each module setting is entirely useless, and I assume that the whole thing can be done as a set based operation in SQL rather than doing an UPDATE for each page.

Assuming there is no fix for this, what's the best way to get this to the attention of the DNN team and get it fixed?

Regards,
Amir
 
New Post
2/3/2011 3:48 AM
 
I assume, there is a logical flow in the core code, please log your findings into the issue tracker at support.dotnetnuke.com.

Cheers from Germany,
Sebastian Leupold

dnnWerk - The DotNetNuke Experts   German Spoken DotNetNuke User Group

Speed up your DNN Websites with TurboDNN
 
New Post
2/3/2011 1:46 PM
 
Thanks Sebastian.

I've logged the issue on support.dotnetnuke.com - http://support.dotnetnuke.com/issue/ViewIssue.aspx?id=14913&PROJID=2.

Do you have any idea how long it will take to get this fixed?

Regards,
Amir
 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Performance and...Performance and...Slow Page CopyingSlow Page Copying


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