Hibernate-reactive: استثناء إزالة عناصر متعددة من المجموعة القابلة للتضمين المطلوبة

تم إنشاؤها على ٢٢ فبراير ٢٠٢١  ·  7تعليقات  ·  مصدر: hibernate/hibernate-reactive

إجراء اختبارات إضافية للتحقق من أحدث منطق المجموعة التفاعلية من التغييرات OrderColumn # 581 . ركض في مشكلة إزالة أكثر من عنصر واحد أثناء تدفق ().

انظر: OrderedEmbeddableCollectionTest

استثناء: [استثناء 0] io.vertx.core.impl.NoStackTraceThrowable: يجب أن يكون عدد المعلمات المراد تنفيذها متسقًا مع العدد المتوقع للمعلمات = [2] ولكن الرقم الفعلي هو [3].
[استثناء 1] io.vertx.core.VertxException: اكتملت المعاملة بالفعل

يبدو أن مصفوفة قيم الكائن [] تقوم بإرجاع كائن [3] بدلاً من كائن [2] للعنصر المحذوف الثاني في رسالة الملخص الجديدة: https://github.com/hibernate/hibernate-reactive/blob/ fe9dfbaa07e4b71fe85e949a45ac23c91c26709b / hibernate-reactive-core / src / main / java / org / hibernate / رد فعل / persister / collection / impl / ReactiveAbstractCollectionPersister.java # L237

bug

ال 7 كومينتر

قد يكون من المفيد الحصول على الاختبار من خلال العمل على Hibernate ORM core ، فقط لتتمكن من المضي قدمًا ومعرفة ما يحدث هناك.

في deleteRows في ORM ، لا يتغير int offset = 1; أبدًا.

في رد الفعل ، نقوم بتمرير الإزاحة إلى المكالمة deleteRowsParamValues( entry, index+1, id, session ) ، والتي تستند إلى قيمة index المتزايدة. يبدو أننا دمجنا بشكل خاطئ مفاهيم i و index و loc و offset في ORM.

يبدو أن قيمة i توفر طرق تحديث وإدراج لمعرفة إدخال المجموعة الذي يتم تشغيله ، لذلك لا ينبغي ربطه / استخدامه في عملية الحذف.

نعم ، يبدو أن المنطق تم نقله بشكل خاطئ.

أعتقد أن مجرد تغيير index+1" إلى 1 يعكس منطق ORM

رائعة!

مسكة جيدة!

blafond : لقد قمت بتعيين هذا لك كما يبدو أن لديك بالفعل إصلاح

شكرا ، blafond

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات