sql >> Database >  >> RDS >> PostgreSQL

hibernate insert batch met gepartitioneerde postgresql

U kunt proberen een aangepaste Batcher te gebruiken door de eigenschap hibernate.jdbc.factory_class in te stellen. Ervoor zorgen dat de slaapstand het aantal updates van batchbewerkingen niet controleert, kan uw probleem mogelijk oplossen. U kunt dat bereiken door uw aangepaste Batcher de klasse BatchingBatcher te laten uitbreiden en vervolgens de methode doExecuteBatch(...) te negeren, zodat deze eruitziet als:

    @Override
    protected void doExecuteBatch(PreparedStatement ps) throws SQLException, HibernateException {
        if ( batchSize == 0 ) {
            log.debug( "no batched statements to execute" );
        }
        else {
            if ( log.isDebugEnabled() ) {
                log.debug( "Executing batch size: " + batchSize );
            }

            try {
//              checkRowCounts( ps.executeBatch(), ps );
                ps.executeBatch();
            }
            catch (RuntimeException re) {
                log.error( "Exception executing batch: ", re );
                throw re;
            }
            finally {
                batchSize = 0;
            }

        }

    }

Merk op dat de nieuwe methode de resultaten van het uitvoeren van de voorbereide instructies niet controleert. Houd er rekening mee dat het aanbrengen van deze wijziging de slaapstand op een onverwachte manier kan beïnvloeden (of misschien niet).



  1. Is het echt nodig om elke keer dat de applicatie start SQLite-tabellen te maken?

  2. mysql controleren op wijzigingen

  3. Wijzig de prioriteit van een account binnen een database-e-mailprofiel (SSMS)

  4. Mutatietabel op Oracle SQL-trigger