I am still going to post the profile results, it will take me a while.
But I did find the issue.
Apparently I cannot run a startup script in my global.asax
Application_OnStart that uses nhibernate. It just sits there and times
out.
As soon as I moved it to begin request it stopped causing problems.

Weird eh?

On Feb 6, 4:04 pm, TheCPUWizard <[email protected]> wrote:
> Can you post the results of the Visual Studio (or other such as ANTS)
> profiler from the run?
>
>
>
>
>
>
>
> -----Original Message-----
> From: [email protected] [mailto:[email protected]] On Behalf
>
> Of Brad Laney
> Sent: Monday, February 06, 2012 1:41 PM
> To: nhusers
> Subject: [nhusers] Loading 1600 records takes 7 minutes
>
> Heyo,
>
> I am trying to load our currency conversion rates into a cached collection
> in NH.
> We store every conversion rate at the start of every day, and use that
> conversion group id in our currencies.
>
> So I just setup the CurrencyConversionRate entity, and did a .ToList() on
> it. It seemed to be working for a while, I guess, but now it takes around 7
> minutes to return to NH. Nothing major has changed.
>
> Any idea why 1600 small rows would require 7 minutes of work?
> The DB query takes 35 reads and 4ms duration.
>
> I have tried some things, and currently my code looks like this:
>
>         public IList<CurrencyConversionRate> All()
>         {
>             var sf = ObjectFactory.GetInstance<ISessionFactory>();
>             using (IStatelessSession s = sf.OpenStatelessSession())
>             {
>                 return s
>                     .QueryOver<CurrencyConversionRate>()
>                     .List();
>             }
>         }
>
>     public class CurrencyConversionRate : Entity
>     {
>         #region Natives
>         public virtual decimal Rate { get; set; }
>         public virtual CurrencyType BaseCurrency { get; set; }
>         public virtual CurrencyType TargetCurrency { get; set; }
>         public virtual DateTime CreatedOn { get; set; }
>         public virtual bool Enabled { get; set; }
>         public virtual int Group { get; set; }
>         #endregion
>     }
>
>     public class CurrencyConversionRateOverride :
> IAutoMappingOverride<CurrencyConversionRate>
>     {
>         public void Override(AutoMapping<CurrencyConversionRate>
> mapping)
>         {
>             mapping.Id(x => x.Id).Column("Id");
>             mapping.Map(x => x.BaseCurrency).Column("FromCurrencyID");
>             mapping.Map(x => x.CreatedOn).Column("DateCreated");
>             mapping.Map(x =>
> x.Group).Column("CurrencyConverterRateGroupID");
>             mapping.Map(x => x.TargetCurrency).Column("ToCurrencyID");
>             mapping.Table("CurrencyConverterRates");
>             //mapping.Cache.ReadOnly().IncludeAll();
>         }
>     }
>
> --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group 
> athttp://groups.google.com/group/nhusers?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to