Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-16473

Indexing is unable to parse ProtoStream message with map fields.

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      Map of String does not contain a MessageDescriptor and the Indexing fails with the following exception

      [ispn-server] Caused by: java.lang.IllegalArgumentException: messageDescriptor cannot be null
      [ispn-server] 	at org.infinispan.protostream.MessageContext.<init>(MessageContext.java:43)
      [ispn-server] 	at org.infinispan.query.remote.impl.indexing.IndexingMessageContext.<init>(IndexingMessageContext.java:27)
      [ispn-server] 	at org.infinispan.query.remote.impl.indexing.IndexingTagHandler.pushContext(IndexingTagHandler.java:127)
      [ispn-server] 	at org.infinispan.query.remote.impl.indexing.IndexingTagHandler.onStartNested(IndexingTagHandler.java:85)
      [ispn-server] 	at org.infinispan.protostream.ProtobufParser.parseMessage(ProtobufParser.java:76)
      [ispn-server] 	at org.infinispan.protostream.ProtobufParser.parseInternal(ProtobufParser.java:58)
      [ispn-server] 	at org.infinispan.protostream.ProtobufParser.parse(ProtobufParser.java:45)
      [ispn-server] 	at org.infinispan.query.remote.impl.mapping.typebridge.ProtobufMessageBridge.write(ProtobufMessageBridge.java:32)
      [ispn-server] 	at org.infinispan.query.remote.impl.mapping.typebridge.ProtobufMessageBridge.write(ProtobufMessageBridge.java:15)
      [ispn-server] 	at org.hibernate.search.mapper.pojo.processing.impl.PojoIndexingProcessorTypeBridgeNode.process(PojoIndexingProcessorTypeBridgeNode.java:45)
      [ispn-server] 	at org.hibernate.search.mapper.pojo.processing.impl.PojoIndexingProcessorOriginalTypeNode.process(PojoIndexingProcessorOriginalTypeNode.java:63)
      [ispn-server] 	at org.hibernate.search.mapper.pojo.work.impl.PojoDocumentContributor.contribute(PojoDocumentContributor.java:55)
      [ispn-server] 	... 84 more
      
      

      Entity:

      /**
       * @Indexed
       * @TypeId(65607)
       */
      message RemoteAuthenticatedClientSessionEntity {
         
         /**
          * @Basic(projectable=true, sortable=true)
          */
         string clientId = 1;
         
         /**
          * @Basic
          */
         string userId = 2;
         
         /**
          * @Basic(projectable=true, sortable=true)
          */
         string userSessionId = 3;
         
         /**
          * @Basic
          */
         string realmId = 4;
      
         map<string, string> notes = 5;
         
         string action = 6;
         
         string protocol = 7;
         
         string redirectUri = 8;
         
         int32 timestamp = 9;
         
         int32 started = 10;
      }
      

      Entity source code: https://github.com/keycloak/keycloak/blob/07c92c85cbf685acd4bd521859df6c4e3e3fe0bb/model/infinispan/src/main/java/org/keycloak/models/sessions/infinispan/entities/RemoteAuthenticatedClientSessionEntity.java#L38

              fercoli@redhat.com Fabio Massimo Ercoli
              pruivo@redhat.com Pedro Ruivo
              Archiver:
              rhn-support-adongare Amol Dongare

                Created:
                Updated:
                Resolved:
                Archived: