Hi gang, We just tried making the hop to NHibernate 4.x, and things were looking great except we hit a strange issue around the IResultTransformer mechanism. In the 3.x stream, we would reliably get a non-null "aliases" array value when IResultTransformer.TransformTuple() was called, and we were leveraging this for some transformations to our DTOs. In at least 3 versions in the 4.x stream (i.e. 4.0.0.4000, 4.0.1.4000, and latest 4.0.4.4000), the "aliases" parameter will be null when the results come from the 2nd-level cache. Unfortunately, our transformer code can not operate without the aliases, and so this is fundamentally broken for us.
Furthermore, looking at the general AliasToBeanTransformer and other examples of transformers, the standard pattern is to throw an ArgumentNullException if the aliases parameter is null. We're currently using the NHibernate.Caches.Redis 2nd-level cache. I did not test other 2nd-level caches, but given that we've been able to hold the cache constant and vary the version of NHibernate to reproduce the bug or make it go away, I suspect something has fundamentally changed in 4.x and that it is likely a bug. Has anyone else been using a combination of 2nd-level cache and a ResultTransformer? have you noticed any issues in the context of NHibernate 4.x? Thanks, Tyler -- You received this message because you are subscribed to the Google Groups "nhusers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/nhusers. For more options, visit https://groups.google.com/d/optout.
