Yes, I have run all the unit tests in both debug and release, and I
have also changed the projects to compile the test assemblies
themselves in Release to make sure that didn't make a difference. They
all pass. I know this much, which is why I'm sure this is something in
my code that I am missing.

I would agree that I would assume this has to do with mappings.
However, it WORKS in Debug mode. I don't see how switching to Release
would break my mappings.

That said, I am running on a Fluent NHibernate stack (1.2, NH 3.1), so
FNH is doing the mapping, via manually created mapping classes in one
of my assemblies.

/ Michael /

On Jun 2, 3:45 pm, Maximilian Raditya <[email protected]> wrote:
> I'm not sure but it seems it's related to your mapping. How do you map your
> domain objects? Using hbm.xml files?
>
> --
> Regards,
>
> Maximilian Haru Raditya
>
>
>
>
>
>
>
> On Fri, Jun 3, 2011 at 2:39 AM, Beefy <[email protected]> wrote:
> > More fun info:
>
> > When I make the first call a Load, I get this:
>
> > Unable to locate persister: Domain.Model.User
>
> > Perhaps this can help point to an underlying cause, like the
> > configuration being wrong or something?
>
> > / Michael /
>
> > On Jun 2, 3:24 pm, Beefy <[email protected]> wrote:
> > > I was told the same thing over in the developer group. As I said
> > > there, there is nothing special I am doing here. In fact, the test
> > > case I would write there would be the same one that is already there
> > > under NHibernate.Tests.Linq.WhereTests.cs
>
> > > This is not an NHibernate bug, it is apparently a bug with my
> > > implementation, which is why I have moved the discussion here.
>
> > > The only symptom I can provide is the one I have - When my app is
> > > compiled in Release mode, with NHibernate 3.1 (provided by Fluent
> > > NHibernate 1.2), NHibernate is not executing any SQL commands except
> > > for the transaction open and close.
>
> > > / Michael /
>
> > > On Jun 2, 3:04 pm, Maximilian Raditya <[email protected]> wrote:
>
> > > > Michael,
>
> > > > I think a simplified test case (bundled in a solution/project would be
> > > > better) reproducing the issue would be the best shot here. Your failing
> > test
> > > > case would explain something that is wrong.
>
> > > > I've personally never run into your issue so I'm not sure why it
> > happened
> > > > thay way in your case. I'm currently using Linq in NH with NH 3.2 Beta
> > 1
> > > > from the trunk and have no issue whether running my own tests in Debug
> > nor
> > > > Release mode.
>
> > > > --
> > > > Regards,
>
> > > > Maximilian Haru Raditya
>
> > > > On Fri, Jun 3, 2011 at 1:18 AM, Beefy <[email protected]> wrote:
> > > > > I fired up the SQL profiler and looked at what I'm getting there.
>
> > > > > In Release mode, NHibernate is ONLY opening and closing transactions,
> > > > > it is not executing any of the other SQL it needs to.
>
> > > > > So the real question here would be, can anyone think of any reason,
> > > > > configuration, etc. where NHibernate wouldn't execute any of the
> > > > > commands it should?
>
> > > > > I have some direct SQL statements that DO work (schema check stuff I
> > > > > do) fine, so this appears to be limited to my NHibernate
> > > > > implementation.
>
> > > > > / Michael /
>
> > > > > On Jun 2, 1:22 pm, Beefy <[email protected]> wrote:
> > > > > > After bouncing around trying to find what is happening, I'm back
> > with
> > > > > > a bit more information about my issues...
>
> > > > > > I'm running an MVC app with Fluent NHibernate (NH 3.1). When
> > compiled
> > > > > > in Debug mode, everything works splendidly. When compiled in
> > Release
> > > > > > mode, NHibernate isn't working. My session is built by
> > Structuremap,
> > > > > > which injects a ISessionFactory (Singleton) into an HttpModule that
> > > > > > opens a transaction OnBeginRequest, and commits / rolls back
> > > > > > OnEndRequest. Nothing really ground breaking here, and as I said,
> > this
> > > > > > all works in Debug mode.
>
> > > > > > My repository takes in this session, and calls a simple
>
> > > > > >     Session.Query<T>().Where(x => x.Email =
> > > > > > "email").SingleOrDefault().
>
> > > > > > It does a lot more than that of course, but that is the particular
> > > > > > query I hit FIRST on an executed request (getting a user to login).
> > I
> > > > > > always get null back from this in Release mode, whereas I get the
> > > > > > right object in Debug mode.
>
> > > > > > THAT IS ALL SETUP FOR THIS.
>
> > > > > > I am running this through NHProfiler to figure out what's
> > happening.
> > > > > > In Debug mode, I see the transaction open, all the SQL get
> > executed,
> > > > > > and then the transaction closed. In Release mode, I see the
> > > > > > transaction open, and then it just closes without executing any
> > SQL.
> > > > > > There is something I am doing that is causing NHibernate to not
> > > > > > execute any SQL when in Release mode, OR NHibernate only outputs
> > the
> > > > > > information NH Profiler needs when in Debug mode (Though it DOES
> > > > > > output the transaction begin/end log...). Just in case, I turned on
> > my
> > > > > > own log4net log and go this out of it:
>
> > > > > > DEBUG 2011-06-02 12:03:36,349 [16] SessionImpl            -
> > [session-
> > > > > > id=449a1286-ff0e-46af-a4cc-235877c723b7] opened session at
> > timestamp:
> > > > > > 634426130163, for session factory:
> > [/a28575cbfee44a269368768a28d01c78]
> > > > > > DEBUG 2011-06-02 12:03:36,363 [16] AdoTransaction         - Begin
> > > > > > (Unspecified)
> > > > > > DEBUG 2011-06-02 12:03:36,366 [16] iverConnectionProvider -
> > Obtaining
> > > > > > IDbConnection from Driver
> > > > > > DEBUG 2011-06-02 12:03:36,373 [16] QueryPlanCache         - located
> > > > > > HQL query plan in cache (.SingleOrDefault[Domain.Model.User]
> > > > > > (.Where[Domain.Model.User]
> > > > > > (NHibernate.Linq.NhQueryable`1[STEP.Domain.Model.User], Quote((x, )
> > =>
> > > > > > (String.op_Equality(x.Email, p1))), ), ))
> > > > > > DEBUG 2011-06-02 12:03:36,376 [16] QueryPlanCache         - located
> > > > > > HQL query plan in cache (.SingleOrDefault[Domain.Model.User]
> > > > > > (.Where[Domain.Model.User]
> > > > > > (NHibernate.Linq.NhQueryable`1[STEP.Domain.Model.User], Quote((x, )
> > =>
> > > > > > (String.op_Equality(x.Email, p1))), ), ))
> > > > > > DEBUG 2011-06-02 12:03:36,378 [16] HQLQueryPlan           -
> > > > > > find: .SingleOrDefault[STEP.Domain.Model.User]
> > > > > > (.Where[Domain.Model.User]
> > > > > > (NHibernate.Linq.NhQueryable`1[STEP.Domain.Model.User], Quote((x, )
> > =>
> > > > > > (String.op_Equality(x.Email, p1))), ), )
> > > > > > DEBUG 2011-06-02 12:03:36,379 [16] QueryParameters        - named
> > > > > > parameters: {}
> > > > > > DEBUG 2011-06-02 12:03:36,382 [16] ControllerBase         - Action:
> > > > > > Account.LogOn | Time(s): 0.011
> > > > > > DEBUG 2011-06-02 12:03:36,384 [16] ControllerBase         -
> > > > > > ActionResult: Account.LogOn => RedirectToRouteResult | Time(s): 0
> > > > > > DEBUG 2011-06-02 12:03:36,385 [16] AdoTransaction         - Start
> > > > > > Commit
> > > > > > DEBUG 2011-06-02 12:03:36,386 [16] SessionImpl            - before
> > > > > > transaction completion
> > > > > > DEBUG 2011-06-02 12:03:36,388 [16] AdoTransaction         -
> > > > > > IDbTransaction Committed
> > > > > > DEBUG 2011-06-02 12:03:36,389 [16] SessionImpl            -
> > > > > > transaction completion
> > > > > > DEBUG 2011-06-02 12:03:36,390 [16] ConnectionManager      -
> > > > > > aggressively releasing database connection
> > > > > > DEBUG 2011-06-02 12:03:36,391 [16] ConnectionProvider     - Closing
> > > > > > connection
> > > > > > DEBUG 2011-06-02 12:03:36,392 [16] AdoTransaction         -
> > > > > > IDbTransaction disposed.
> > > > > > DEBUG 2011-06-02 12:03:36,393 [16] SessionImpl            -
> > [session-
> > > > > > id=449a1286-ff0e-46af-a4cc-235877c723b7] running ISession.Dispose()
> > > > > > DEBUG 2011-06-02 12:03:36,394 [16] SessionImpl            -
> > [session-
> > > > > > id=449a1286-ff0e-46af-a4cc-235877c723b7] executing real
> > Dispose(True)
> > > > > > DEBUG 2011-06-02 12:03:36,395 [16] SessionImpl            - closing
> > > > > > session
> > > > > > DEBUG 2011-06-02 12:03:36,398 [16] AbstractBatcher        - running
> > > > > > BatcherImpl.Dispose(true)
>
> > > > > > Again, it would seem that Nhibernate is either not spitting out any
> > > > > > logging info when in Release mode, or is simply not executing any
> > of
> > > > > > it's queries. When my solution is compiled in debug mode I get
> > > > > > thousands more lines of log messages, so I assume NHibernate is not
> > > > > > outputting a lot of stuff when the calling solution is compiled in
> > > > > > Release mode...
>
> > > > > > Does anyone have any insights into what I may be doing wrong?
> > > > > > Connection String properties that only work in Debug mode for some
> > > > > > reason?
>
> > > > > > Or even better, a way to make NHibernate spit out the same info for
> > > > > > the Release mode vs Debug mode so I can compare what they are
> > doing?
>
> > > > > --
> > > > > 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.
>
> > --
> > 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.

-- 
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