LockMode hash differs in x86 and 64bit OS

Description

When using LockMode over remoting between PCs with x86 and 64bit operating systems there is different result in GetHashCode.
It leads to error "LockMode Upgrade not supported by NHibernate.Persister.Entity.SingleTableEntityPersister " when I pass LockMode.Upgrade from x86 to 64bit to do

session.Lock(this, lockMode)

It is caused by generating and storing hash code upon creating instance of LockMode.
LockMode constructor uses a XOR (^) operand to generate and store hash code, and it has different behavior depends on OS type (x84, 64bit)

Environment

None

Assignee

Frédéric Delaporte

Reporter

Anton Nemo

Labels

Components

Fix versions

Affects versions

Priority

Minor
Configure