Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-6400

Database metadata retrieval is slow when thousands of schemas exist in MySQL

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Obsolete
    • Icon: Minor Minor
    • None
    • None
    • jdbc-connector
    • None

      Feature request or enhancement

      In my situation a single sink event takes around 15 seconds to be processed, so it's therefore not usable in a productive environment.

      The reason for that slowness are the functions hasTable() and readTable() of the JdbcChangeEventSink sink class in combination with a mysql DB which has more than seven thousand schemas inside. The hibernate functions dialect.tableExists() and dialect.readTable() are consuming this hughe times.

      Which use case/requirement will be addressed by the proposed feature?

      Support mysql DB's which have thousands of schemas and performance improvement overall.

      Implementation ideas (optional)

      In some situation like mine it is not expected that a table schema of a target DB is modified during operation. So it seems possible to me that a simple map <table name, table descriptor> in mentioned functions helps. It may require a new configuration parameter for enabling caching to be backwards compatible.

              ccranfor@redhat.com Chris Cranford
              DetlefPumpenschnabel Detlef Pumpenschnabel (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: