Show Changes Show Changes
Edit Edit
Print Print
Recent Changes Recent Changes
Subscriptions Subscriptions
Lost and Found Lost and Found
Find References Find References
Rename Rename
Administration Page Administration Page
Search

History

11/10/2008 6:35:31 AM
JohnDavidson
11/1/2008 5:44:49 AM
FLWCOM-jwdavidson
10/31/2008 7:32:52 PM
FLWCOM-jwdavidson
10/31/2008 7:32:13 PM
FLWCOM-jwdavidson
10/31/2008 7:23:31 PM
FLWCOM-jwdavidson
List all versions List all versions

RSS feed for the DevDiscuss namespace

FlexWiki Development General Discussion
.
Summary
Start New Thread Collapse Sub Threads Open All Threads

Trial of Development Forum

FLWCOM-jwdavidson Saturday, November 01, 20085:56:57 AM

This will serve as the start of a trial for using the Threaded Forum format inside FlexWiki as a partial replacement for the flexwiki-user maillist hosted by SourceForge. There have been a number of issues with the SourceForge based maillists and it is hoped that this medium will be able to provide adequate replacement and maybe even provide a number of new features not possible in a maillist.

The various forum will have Atom feeds attached to the main topic for that forum, which should make it easier to follow discussions.

Reply To This

2 Bugs solved with TypeRegistry.cs

Chris - 88.174.190.192 Thursday, November 06, 20082:10:06 AM

Hi

We solved 2 bugs with the TypeRegistry class in v2.1.0.270:

1. An instance of TypeRegistry was created on each request (or even more - can't remember). The issue is that each instance is going to parse all exported Types of all loaded assemblies, which is very slooooow. Solution: we made the TypeRegistry a singleton class (and modified the BELType and ExecutionContext classes accordingly).

  private static TypeRegistry _instance;


  private TypeRegistry()
  {}


  static TypeRegistry()
  {
    _instance = new TypeRegistry();
  }


  public static TypeRegistry Instance
  {
    get { return _instance; }
  }

2. In the RegisterTypesFromAssembly method, calling GetExportedTypes throw an exception when the assembly is dynamic (the exception is caught, but that's slow). Solution is to add that test:

  // Let's try to exclude dynamic assemblies - this way, 
  // we avoid going into the (slow) catch below.
  Module[] allMod = a.GetModules();
  if (allMod.Length != 0 &&  // Is (Length==0) possible?
      allMod[0] is System.Reflection.Emit.ModuleBuilder)
      return;

Regards

Chris

www.aulofee.com - Infrastructure and Security Supervision, Event Correlation

Reply To This

2 Bugs solved with TypeRegistry.cs

FLWCOM-jwdavidson Thursday, November 06, 20086:56:44 AM

Thanks Chris

The improvement is in build 2.1.0.287

Converted TypeRegistry class to a Singleton and added some checks in RegisterTypesFromAssembly to reduce caught errors. Changed BELType and ExecutionContext classes for calls to TypeRegistry.

Execution time for Unit Tests was reduce by 5 seconds from 85 secs to < 80 secs.

Topic generation times were generally improved:

  1. 50% of topics no change in generation
  2. 10% of topics improved with a reduction of 50ms to output topic
  3. 30% of topics improved with a reduction of 100-150ms to output topic
  4. 2% of topics improved with a reduction of 300-1000ms to output topic
  5. 8% of topics worsened with an increase of 100ms to output topic
Reply To This

 

Not logged in. Log in

A forum area to discuss topics relevant to ongoing FlexWiki development

This is FlexWiki, an open source wiki engine.

Change Style

Recent Topics