{"action":"closed","issue":{"url":"https://api.github.com/repos/nhibernate/jira-import/issues/128","repository_url":"https://api.github.com/repos/nhibernate/jira-import","labels_url":"https://api.github.com/repos/nhibernate/jira-import/issues/128/labels{/name}","comments_url":"https://api.github.com/repos/nhibernate/jira-import/issues/128/comments","events_url":"https://api.github.com/repos/nhibernate/jira-import/issues/128/events","html_url":"https://github.com/nhibernate/jira-import/issues/128","id":137143275,"number":128,"title":"NH-1365 - Auto flushmode does NOT scale","user":{"login":"hazzik","id":144791,"avatar_url":"https://avatars.githubusercontent.com/u/144791?v=3","gravatar_id":"","url":"https://api.github.com/users/hazzik","html_url":"https://github.com/hazzik","followers_url":"https://api.github.com/users/hazzik/followers","following_url":"https://api.github.com/users/hazzik/following{/other_user}","gists_url":"https://api.github.com/users/hazzik/gists{/gist_id}","starred_url":"https://api.github.com/users/hazzik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hazzik/subscriptions","organizations_url":"https://api.github.com/users/hazzik/orgs","repos_url":"https://api.github.com/users/hazzik/repos","events_url":"https://api.github.com/users/hazzik/events{/privacy}","received_events_url":"https://api.github.com/users/hazzik/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/nhibernate/jira-import/labels/comp:Core","name":"comp:Core","color":"ededed"},{"url":"https://api.github.com/repos/nhibernate/jira-import/labels/type:Improvement","name":"type:Improvement","color":"ededed"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2008-07-02T13:36:07Z","updated_at":"2016-02-29T04:24:28Z","closed_at":"2016-02-29T04:24:28Z","body":"Going from 1.2.0 to 2.0beta1 I unfortunately see that the autoflush functionality (checking for dirty entities) is dramatically slower in 2.0. The time spent in dirtycheck is at least a factor 10 slower (and it wasn't fast in 1.2). I have attached a screen clipping from DotTrace where you can see that 625 calls to SessionImpl.List ends up in 218.719 calls to OnFlushEntity which ends up in 3.492.076 calls to NHibernate.Properties.FieldAccessor.Get\n\nThis corresponds to almost 40% of the total time which is too expensive.\n\n"}}