indexExists does a full snapshot

Description

Improve performance

Environment

None

Activity

Show:
EduardE
February 26, 2014, 1:20 PM

Hello, Nathan. I update from 2.0.5 to 3.1.1. On our project we use Postgres and we must use many preConditions, and perfomance of preconditions is very important.
I will run some benchmark

I took next result (liquibase 2.0 vs 3.1):

2.0:

  • 2 min 21 sec fk_by_name

  • 2 min 19 sec index_by_name

  • 2 min 18 sec index_by_name_and_table

  • 2 min 17 sec pk_by_name

  • 2 min 19 sec pk_by_name_and_table

  • 2 min 19 sec seq_by_name

3.1:

  • 53 sec fk_by_name

  • 2 min 33 sec index_by_name

  • 1 min 31 sec index_by_name_and_table

  • 34 sec pk_by_name

  • 33 sec pk_by_name_and_table

  • 9 sec seq_by_name

It is very bad results too. We wrote some stored functions and use them like:

But this way not so beautiful. Can we use database specific methods for preconditions by dbms parameter?

EduardE
February 27, 2014, 6:49 AM

changeSet was run on schema with about 1000 tables

Nathan Voxland
February 27, 2014, 10:00 PM

Thanks, I'll take a look

Nathan Voxland
May 29, 2014, 8:51 PM

Snapshot performance is improving, but needs more work so leaving open until 3.3.

Nathan Voxland
May 29, 2015, 4:38 PM

This should be fixed along with changes in

Reporter

Nathan Voxland

Fix versions

Priority

Major
Configure