# NullpointerException at foreignkeyConstraintExists precondition check (Liquibase v3.0.4)

**URL:** <https://forum.liquibase.org/t/nullpointerexception-at-foreignkeyconstraintexists-precondition-check-liquibase-v3-0-4/2436>\
**Category:** General Discussion\
**Created:** [September 15, 2013, 3:50am UTC](https://forum.liquibase.org/t/nullpointerexception-at-foreignkeyconstraintexists-precondition-check-liquibase-v3-0-4/2436 "2013-09-15T03:50:00Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![wreedijk](https://avatars.discourse-cdn.com/v4/letter/w/da6949/32.png) [@wreedijk](https://forum.liquibase.org/u/wreedijk)\
**Post date:** [September 15, 2013, 3:50am UTC](https://forum.liquibase.org/t/nullpointerexception-at-foreignkeyconstraintexists-precondition-check-liquibase-v3-0-4/2436/1 "2013-09-15T03:50:00Z")

</div>

I get the following error in Liquibase 3.0.4:  
  
SEVERE 14/09/13 2:06 PM:liquibase: Change Set CR4/CR4 Alter 264 Defect 33204 revise table SamplerMetaInfo.xml::0::Wilf failed.&nbsp; Error: Migration failed for change set CR4/CR4 Alter 264 Defect 33204  
vise table SamplerMetaInfo.xml::0::Wilf:  
&nbsp;&nbsp;&nbsp;&nbsp; Reason:  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; update.xml : liquibase.precondition.core.ForeignKeyExistsPrecondition@2f542f54 : java.lang.NullPointerException  
  
liquibase.exception.MigrationFailedException: Migration failed for change set CR4/CR4 Alter 264 Defect 33204 revise table SamplerMetaInfo.xml::0::Wilf:  
&nbsp;&nbsp;&nbsp;&nbsp; Reason:  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; update.xml : liquibase.precondition.core.ForeignKeyExistsPrecondition@2f542f54 : java.lang.NullPointerException  
  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.changelog.ChangeSet.execute(ChangeSet.java:310)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:28)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:58)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.Liquibase.update(Liquibase.java:135)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.integration.commandline.Main.doMigration(Main.java:856)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.integration.commandline.Main.main(Main.java:138)  
Caused by: liquibase.exception.PreconditionErrorException: Precondition Error  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.precondition.core.ForeignKeyExistsPrecondition.check(ForeignKeyExistsPrecondition.java:76)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.precondition.core.AndPrecondition.check(AndPrecondition.java:34)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.precondition.core.PreconditionContainer.check(PreconditionContainer.java:199)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at liquibase.changelog.ChangeSet.execute(ChangeSet.java:274)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; … 5 more  
  
When I switch back to 2.0.5 the change set runs fine:  
  
INFO 14/09/13 2:27 PM:liquibase: Marking ChangeSet: CR4/CR4 Alter 264 Defect 33204 revise table SamplerMetaInfo.xml::8::Wilf::(Checksum: 3:9944f846616913213f33fd4201c7607a) ran despite precondition fa  
ilure due to onFail=‘MARK\_RAN’:  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; update.xml : Column ‘AVERAGEDENSITYUOM’ does not exist  
  
I see that in v2.0.x there was a similiar issue that was later fixed:   
[http://forum.liquibase.org/topic/nullpointerexception-at-foreignkeyconstraintexists-precondition-check](http://forum.liquibase.org/topic/nullpointerexception-at-foreignkeyconstraintexists-precondition-check)  
  
Is this a defect? Any suggestions?  
Thanks  
Wilf

---

<div class="post-metadata">

**Author:** ![nvoxland](https://avatars.discourse-cdn.com/v4/letter/n/87869e/32.png) [@nvoxland](https://forum.liquibase.org/u/nvoxland)\
**Post date:** [September 15, 2013, 3:50am UTC](https://forum.liquibase.org/t/nullpointerexception-at-foreignkeyconstraintexists-precondition-check-liquibase-v3-0-4/2436/2 "2013-09-15T03:50:00Z")

</div>

Can you send the stacktrace you are seeing on 3.0.5 and what you are calling to get the error?  
  
Nathan

---

<div class="post-metadata">

**Author:** ![noldewit](https://avatars.discourse-cdn.com/v4/letter/n/3bc359/32.png) [@noldewit](https://forum.liquibase.org/u/noldewit)\
**Post date:** [September 15, 2013, 3:50am UTC](https://forum.liquibase.org/t/nullpointerexception-at-foreignkeyconstraintexists-precondition-check-liquibase-v3-0-4/2436/3 "2013-09-15T03:50:00Z")

</div>

Also just ran in to that, but on 3.0.5…

---

<div class="post-metadata">

**Author:** ![wreedijk](https://avatars.discourse-cdn.com/v4/letter/w/da6949/32.png) [@wreedijk](https://forum.liquibase.org/u/wreedijk)\
**Post date:** [September 15, 2013, 3:50am UTC](https://forum.liquibase.org/t/nullpointerexception-at-foreignkeyconstraintexists-precondition-check-liquibase-v3-0-4/2436/4 "2013-09-15T03:50:00Z")

</div>

Nol (FWIW) my workaround with Oracle was to query the **all\_constraints** table directly…  
  
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;   
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;   
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SELECT count(\*) FROM all\_constraints WHERE Upper(CONSTRAINT\_NAME)=‘SAMPLERMETAINFOFKTEMPERATUREUO’ and owner in (select user from dual);  
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;   
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;   
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;   
  
- Wilf
