Hibernate-reactive: MS SQL: falha ao criar tabela temporária local

Criado em 3 mai. 2021  ·  9Comentários  ·  Fonte: hibernate/hibernate-reactive

Encontrou o problema ao executar UnionSubclassInheritanceTest com MS SQL.

O RH usa ReactiveIdTableSupport para gerar SQL para criar uma tabela temporária local.

O MS SQL espera que os nomes das tabelas temporárias locais comecem com um único sinal de hash:
https://docs.microsoft.com/en-us/sql/t-sql/statements/create-table-transact-sql#temporary -tables

bug

Todos 9 comentários

Sim, é porque estamos usando ReactiveBulkIdStrategy vez da coisa retornada por AbstractTransactSQLDialect.getDefaultMultiTableBulkIdStrategy() . Deve ser fácil de consertar. Não se preocupe muito com isso por enquanto.

@tsegismont , deve ser o suficiente para alterar ReactiveIdTableSupport. generateIdTableName () seguinte forma:

    <strong i="8">@Override</strong>
    public String generateIdTableName(String baseName) {
        return (dialect instanceof SQLServerDialect ?  "#" : "ht_") + baseName;
    }

@gavinking obrigado pela dica. Eu optei por algo um pouco diferente (para manter o prefixo ht_ ) e também tive que mudar o método getCreateIdTableCommand .

Consulte https://github.com/tsegismont/hibernate-reactive/commit/84caabcefb4eb1a47e7e0c2d931584038d162393

Optei por algo um pouco diferente (para manter o prefixo ht_ )

Bem, eu acredito que se você marcar Hibernate ORM (com o qual tentamos alinhar), ele descarta o prefixo ht_ no caso do SQL Server, porque as tabelas temporárias têm seu próprio namespace.

@tsegismont podemos fechar este?

Eu compartilhei algumas mudanças em um PR para o fork do

Se essas mudanças foram escolhidas a dedo aqui, sim, o problema pode ser encerrado.

Obrigado @tsegismont , vou dar uma olhada nisso hoje

Obrigado rapazes.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

gavinking picture gavinking  ·  6Comentários

yaakov-berkovitch picture yaakov-berkovitch  ·  16Comentários

blafond picture blafond  ·  7Comentários

Sanne picture Sanne  ·  12Comentários

DavideD picture DavideD  ·  17Comentários