Grails-da eski kodlar bazasi bilan ishlash. Ba'zi sharoitlarda (aniq nimasi noma'lum) biz findBy ni bajarayotganda sirli NPE, quyida ko'rsatilgan stek iziga ega bo'lamiz.
Hozircha biz qandaydir tiqilib qolganmiz; Bu Kutish rejimi uchun bir nechta forumlarda paydo bo'ladi, ammo javoblar "sizning sxemangizda nimadir noto'g'ri" deganga o'xshaydi. Muammoni kuzatishimizga yordam beradigan qo'shimcha tafsilotlarni topsangiz ajoyib bo'lardi.
Yangilanish
Javobingiz uchun rahmat. Ha, bu NPE sodir bo'lganda, version
null
bo'lishi aniq. Muammo shundaki, biz uni kodda ko'rib chiqsak, u yo'q null
.
Biz ip bilan bog'liq muammo borligiga shubha qila boshladik.
Caused by: java.lang.NullPointerException
at org.hibernate.type.LongType.next(LongType.java:79)
at org.hibernate.engine.Versioning.increment(Versioning.java:131)
at org.hibernate.event.def.DefaultFlushEntityEventListener.getNextVersion(DefaultFlushEntityEventListener.java:387)
at org.hibernate.event.def.DefaultFlushEntityEventListener.scheduleUpdate(DefaultFlushEntityEventListener.java:279)
at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:151)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:219)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:99)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:49)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1027)
at org.codehaus.groovy.grails.plugins.quartz.listeners.SessionBinderJobListener.jobWasExecuted(SessionBinderJobListener.java:58)
at org.quartz.core.QuartzScheduler.notifyJobListenersWasExecuted(QuartzScheduler.java:1910)