For those that follows this thread: I found a workaround that was replacing derby with h2 in the pax exam test (running the test with both PostgreSQL and h2 worked fine, but PostgreSQL was a bit impractical for a test, so...).
And then, since I need someone should look into it, I opened a github issue on the problem: https://github.com/liquibase/liquibase/issues/5357 The bug is really weird in that it happens only in the pax exam test, and not when loading the feature from the karaf command line. I haven't seen that behaviour before (if it has failed in pax exam, it has failed in karaf actual as well). It doesn't fail in the JUnit 5 test either. I have debugged my way to the error message. (The error feels like a race condition, but I haven't seen anything "thready" between the lock aquisition and the code setting up the schema.)