Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-4109

BinaryType.isEnum() throws an exception if typeId==0

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.7
    • 2.0
    • binary
    • None

    Description

      If typeId==0 and full class name is written in the binary format, BinaryType.isEnum() method fails with the exception:

      Caused by: org.apache.ignite.binary.BinaryObjectException: Failed to get binary type details [typeId=0]
        at org.apache.ignite.internal.binary.BinaryTypeProxy.target(BinaryTypeProxy.java:99) ~[ignite-core-1.6.7.jar:1.6.7]
        at org.apache.ignite.internal.binary.BinaryTypeProxy.isEnum(BinaryTypeProxy.java:86) ~[ignite-core-1.6.7.jar:1.6.7]
      

      This happens because BinaryTypeProxy.target() method ignores this case. If typeId==0, It should look up full class name from the object and convert it to the actual type ID before trying to fetch metadata.

      Attachments

        Activity

          People

            dkarachentsev Dmitry Karachentsev
            vkulichenko Valentin Kulichenko
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: