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

HomeHomeDNN Open Source...DNN Open Source...Module ForumsModule ForumsEventsEventsNotificationsNotifications
Previous
 
Next
New Post
11/15/2006 1:24 AM
 
Hi Steve.  Thanks for all the great work on fixing the Events module.  I do however have a problem that I'm hoping you can help with.

I followed your directions to install your modified DLLs (and everything in the DNN_Root.zip).  Removed *event*.dll from the bin directory.  Removed DesktopModules/Events, and modified the web.config.

Just before doing all that I enabled the Event Notification Scheduler (Host > Schedule > DotNetNuke.Modules.Events.EventNotification, DotNetNuke.Modules.Events).

After modifying my web.config and hitting the site again, all of a sudden I had 3 or 4 DW20.exe processes chewing up 100% cpu.  Turns out these are Dr. Watson-type errors.  The event log error that's being logged in my Application log is:

EventType clr20r3, P1 w3wp.exe, P2 6.0.3790.1830, P3 42435be1, P4 dotnetnuke.dnnscheduler, P5 2.1.0.17739, P6 4540dcd3, P7 2b, P8 12e, P9 system.nullreferenceexception, P10 NIL.


And in my System log is:

Application pool 'DotNetNukeAppPool' is being automatically disabled due to a series of failures in the process(es) serving that application pool.

Problem is, I can't load my site anymore.  And any time I try it spawns 3 or 4 of these DW20.exe processes and my cpu hits 100%.  I reverted all the changes I made from your zip file and the site loads again, but I'm now wary of dropping back in your mods.  Is there some config item I'm missing?  Should I not have the Event Scheduler enabled?  I'm running DNN 4.3.5 INSTALL version.  I have not cracked open VS.NET at all, and from what I understood in your posts I don't really need to.  However I may have misunderstood.  Any thoughts?
 
New Post
11/15/2006 9:19 AM
 
This problem sounds very familiar (as in, I think i ran into it while developing the module...)

It looks to me like the scheduler is trying to call the events scheduler to run, but its not finding it, or its assembly - and then every time it either retrys (because catch-up is enabled), or runs the next one, it fires again, and thats why you get multiple processes. 

Because that is my guess - then there are several things that could be the culprit.  Lets make sure of/double check a couple of things in your Events modified DNN install. 

Part One:
make sure that the scheduler dll (DotNetNuke.DNNScheduler.dll) is indeed the one I provided.  I had this process lock up problem during development, and that dll is the result of it.

Part Two:
First, the events module should be installed, NOT my version, but the latest version that you can download at dnn.com.  I think you most likely had that done already, but I have to check - just in case.    This is because you need the events module to run its intallation scripts, for the database, and registering itself with DNN.  Once it has done all that - then you write over the events code with my changes (as installable from my zip file).

The second part to this is to make sure that *before* you load in my changes, you have deleted your DesktopModles/Events directory (I know you said you did this...), and then *added it back* from my .zip file.  This is for simplicity's sake, because there are several .vb files that need to be moved to the App_Code directory (and modified), and its easier for me just to provide a .zip with everything you need, than to detail out which files should go where, and what should be replaced. 

Second, double check your web.config file to make sure that the <codesubdirectories> area is done right.  It should  be inside of (this is just like the file you've seen in the .zip file):
<system.web>
  <compilation>
    <codesubdirectories>
      <add directoryName="App_Code_SubDirectory">
    </codeSubDirectories>
  </compilation>
</system.web>

If this area is not done right, then I believe you would see errors like what you've gotten.   I think you may also see that if  an old events dll got left/forgotten in the bin directory, the system would be seeing two conflicting assemblies and lock up - make sure you've deleted the DotNetNuke.Events.WebControls.dll - its easy to miss. 

The reason your whole site goes down when this locks up is because the Scheduler uses http requests to tell it when to do its work, so the first time you hit the site after turning it on, now its running, trying to do its thing (trust me, I know, I bricked a couple databases in development of this thing...).  Unfortunately, really the best thing to do is when you are troubleshooting your site, do it locally, not on your full MSSQL server, so you can just keep replacing your App_Data Sql Express DB when things go wrong, and try again.

Let me know what you find when you double check your work - I'm interested to be able to know where things could/can go wrong in different environments.  This stuff will become a part of a readme I'll distribute with the install. 

 
New Post
11/15/2006 12:04 PM
 
Ok, here's my testing results.

Before doing anything I disabled the Events Scheduler... just in case.

Followed your instructions very carefully.  The only discrepancy between what you said here and what you said previously was that previously you said to delete the DotNetNuke.Modules.Events* in the bin directory, in addition to the DotNetNuke.Events.WebControls.dll.  So, I followed the original post and removed *events* from my bin directory (renamed to .old actually).  All other changes were as per your posts and the contents of the zip file. 

Logged in to site.  Did a test send to all enrolled users.  The email sent .  I then did a test send with "Attach Event" checked.  This generated the same error that it has previously (wasn't sure if this fix of yours addressed that as well, but figured I'd give it a shot):

A critical error has occurred.
The process cannot access the file 'C:\Inetpub\wwwroot\dotnetnuke\Portals\0d72efffa-ce57-464e-a025-81466180552f.vcs' because it is being used by another process.

As for notifications, I went to my Host Settings > Advanced Settings > Other Settings and changed the Scheduler Mode from Request Method to Timer Method, as this is more appropriate for what I'm trying to accomplish (site is low traffic, but notifications should be sent when they should be sent, not dependent on whether or not someone hits a page).

I then went to Host > Schedule and enabled the DotNetNuke.Modules.Events.EventNotification, DotNetNuke.Modules.Events schedule.  Now I'm waiting for the schedule to kick in and see what happens (set it to notify me about 20 mins from now, as I wasn't sure if it suffered from the same problems in scheduling events to occur very soon as the Windows Scheduler does, so did 20 mins to be on the safe side).

Will post back my results when I have them.


 
New Post
11/15/2006 12:23 PM
 
Alright, so, the scheduler kicked in, 3 instances of DW20.exe launched and CPU hit 100% again.  Now when I try hitting that site I get at least one instance of DW20.exe and the site is unavailable.

I'm working on a dev site here, so even if I have to blow it away it's not a big deal.  However I'll leave it as is now so that hopefully we can put our heads together and tighten up this process so that others don't experience it.  Might be nice if someone from the core team or the events module would poke their head in here and incorporate some of your changes into the module itself .

On another note, the last email that I sent to all enrolled users where I checked Attach Event, which gave me the locked file error, actually sent the email with the event attached.  I just assumed that because it gave me that error (and because in the past email wasn't working) that it would fail completely.  Odd that it would generate this error but still attach the event.  But that's the topic of another thread.

So, do you recommend that I revert the changes from your zip or should I try something else?  Eagerly awaiting your response.
 
New Post
11/15/2006 2:00 PM
 
ok, we're making great progress here.  I should have been more clear in my original post - you must delete ALL DLLs that have the word "EVENT" in them.

[For other people's sake - here is the clarification of my instructions:]
This is the list of dlls to remove:
DotNetNuke.Modules.Events.SqlDataProvider.dll
DotNetNuke.Modules.Events.dll
DotNetNuke.Events.WebControls.dll

This is the DLL that is include in my .zip file that you need to replace:

DotNetNuke.DNNScheduler.dll

------------------------ NEXT ----------------------
The .vcs file problem was actually in the original code too - I wasn't sure if it would go away once I got the rest working - I guess it didn't.  That will be next on my list of things to fix.


 
Previous
 
Next
HomeHomeDNN Open Source...DNN Open Source...Module ForumsModule ForumsEventsEventsNotificationsNotifications


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