Проблема заключалась в том, что основной процесс sh
был убит, но дочерний процесс sleep
был еще жив.
Решением было назначить группу процессов для основного процесса и уничтожить целую группу процессов.
// assign process group
cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
// Kill pg
syscall.Kill(-cmd.Process.Pid, syscall.SIGKILL)
Решение было найдено здесь
Беглый NHibernate сам редко жалуется на вас напрямую. Внутренне это просто сборка ваших файлов HBM для вас, так что если вы сказали, чтобы он строил что-то не то, то собственно NHibernate станет раздражительным.
Если вы еще этого не сделали, вы можете начать экспортировать файлы сопоставления следующим образом:
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<MyClass>()
.ExportTo("path")
Тогда вы можете покопаться там, чтобы увидеть, если что-то не так. Я помню, как однажды получал эту ошибку, и думаю, что это связано с несоответствием количества отображаемых столбцов. Это была одна из тех ошибок, которые легко пропустить в моем отображении, поэтому, к сожалению, все, что я могу предложить, - это по-настоящему просмотреть вывод ExportTo
для всего, что не имеет смысла.
Нам нужно будет увидеть вашу конфигурацию, чтобы сильно помочь. Но эта часть трассировки стека должна дать вам представление о том, с чего начать.
в FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory () в c: \ Образцы кода \ NHibernate \ Свободный Nhibernate - магистраль \ src \ FluentNHibernate \ Cfg \ FluentConfiguration.cs: строка 94 FluentNHibernate.Cfg.FluentConfigurationException: неверный или при создании SessionFactory использовалась неполная конфигурация. Проверьте коллекцию PotentialReasons и InnerException для более подробной информации.
Я обнаружил, что внутреннее исключение дает более подробную информацию. В моем случае мне пришлось добавить в ссылки файл NHibernate.ByteCode.Castle.dll.