Hibernate-reactive: Id jenis UUID tidak dapat diambil dengan MariaDB dan MySQL

Dibuat pada 19 Mar 2021  ·  17Komentar  ·  Sumber: hibernate/hibernate-reactive

Entitas ada di db tetapi find akan mengembalikan null

bug

Semua 17 komentar

Saya pikir ini adalah masalah dengan klien SQL Vert.x tetapi saya perlu memeriksanya dengan tes

Saya telah menemukan masalahnya.
Tabel memiliki kolom yang didefinisikan sebagai binary(255) tetapi UUID dibuat sebagai binary(16) . Ini berfungsi untuk dialek lain tetapi tidak untuk MySQL/MariaDB dengan klien SQL vert.x

Hrm, ya, sepertinya ini adalah bug yang saya perbaiki di H6, dengan memperbaiki panjang kolom default yang rusak untuk UUIDBinaryType . Saya mengaturnya ke 16 secara default. Di H5, panjang kolom default ke sesuatu yang bodoh (tampaknya 255).

Saya telah membuat masalah untuk klien Vert.x SQL: https://github.com/Eclipse-vertx/vertx-sql-client/issues/922
Ini sepertinya bug mengingat ini berfungsi untuk semua database lainnya.

Saya kira solusi saat ini adalah menentukan jenis kolom:

        @Column(columnDefinition = "binary(16)")
        UUID id;

Sejujurnya saya tidak yakin apakah ini bug driver karena saya merasa mengalami masalah yang sama dengan JDBC.

Tapi aku mungkin salah ingat.

Sesuatu memotivasi saya untuk pergi dan memperbaiki masalah di H6.

Saya kira solusi saat ini adalah menentukan jenis kolom

Ya, tentu saja, persis.

Mungkin saya bisa mengubah UUIDType saat menggunakan reaktif

Tidak karena di H5 suatu tipe tidak dapat menentukan panjang kolom.

Saya harus membangun seluruh infrastruktur untuk itu di H6. Dan IIRC itu tidak sepele.

Sejujurnya saya tidak yakin apakah ini bug driver karena saya merasa mengalami masalah yang sama dengan JDBC.

Saya sudah mengujinya dan sepertinya berfungsi ketika saya menggunakan Hibernate ORM dan JDBC

Saya harus membangun seluruh infrastruktur untuk itu di H6. Dan IIRC itu tidak sepele.

Sepertinya tidak banyak yang bisa saya lakukan untuk saat ini.
Saya akan menunggu untuk melihat apa yang mereka pikirkan di sisi klien Vert.x SQL dan, sementara itu, mengirim PR dengan kasus uji untuk dbs lainnya.

Sejujurnya saya tidak yakin apakah ini bug driver karena saya merasa mengalami masalah yang sama dengan JDBC.

Saya sudah mengujinya dan sepertinya berfungsi ketika saya menggunakan Hibernate ORM dan JDBC

Oke, baiklah, jadi saya pasti salah ingat.

Saya telah menambahkan kasus uji (UUIDAsBinaryType) tetapi saya tidak akan menutup masalah ini untuk saat ini: https://github.com/hibernate/hibernate-reactive/pull/680

Menunggu untuk melihat apakah tim VERt.x akan melakukan sesuatu tentang itu

Oke, baiklah, jadi saya pasti salah ingat.

Tidak, Anda benar. Saya baru saja memeriksa ulang dan tidak berfungsi untuk MySQL atau MariaDB dengan ORM dan JDBC
Saya mengacaukan suatu tempat ketika saya memeriksa pertama kali.

Jadi, pada akhirnya itu bukan masalah dengan pengemudi.

Saya bertanya-tanya apakah kita harus menyebutkan ini dalam dokumentasi sebelum menutup masalah ini.
Ini tidak terlalu intuitif

Saya bertanya-tanya apakah kita harus menyebutkan ini dalam dokumentasi sebelum menutup masalah ini.

Anda bisa memasukkannya ke dalam FAQ, saya kira, tetapi sebenarnya ini akan termasuk dalam dokumentasi ORM jika ada. Saya rasa kita tidak perlu menyebutkannya di dokumen HR.

Saya pikir kita harus menutup masalah ini.

Oke, mari kita tutup

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

akoufa picture akoufa  ·  30Komentar

hantsy picture hantsy  ·  7Komentar

gavinking picture gavinking  ·  23Komentar

aguibert picture aguibert  ·  28Komentar

gavinking picture gavinking  ·  16Komentar