[infinispan-issues] [JBoss JIRA] (ISPN-8505) The package "org.apache" is too broad to mark it as internally marshallable

Dmitry Katsubo (JIRA) issues at jboss.org
Tue Nov 7 05:49:00 EST 2017


Dmitry Katsubo created ISPN-8505:
------------------------------------

             Summary: The package "org.apache" is too broad to mark it as internally marshallable
                 Key: ISPN-8505
                 URL: https://issues.jboss.org/browse/ISPN-8505
             Project: Infinispan
          Issue Type: Enhancement
          Components: Core, Marshalling
    Affects Versions: 9.1.1.Final
         Environment: Currently the whole package {{org.apache}} is marked as internally marshallable which is too broad and causes the following assertion:
{code}
Exception in thread "AsyncStoreProcessor--p6-t2" java.lang.AssertionError: Check support for: class org.apache.commons.collections4.keyvalue.MultiKey
               at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:596)
               at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:412)
               at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:355)
               at org.infinispan.marshall.core.GlobalMarshaller.writeObjectOutput(GlobalMarshaller.java:188)
               at org.infinispan.marshall.core.GlobalMarshaller.writeObjectOutput(GlobalMarshaller.java:181)
               at org.infinispan.marshall.core.GlobalMarshaller.objectToBuffer(GlobalMarshaller.java:305)
               at org.infinispan.marshall.core.MarshalledEntryImpl.marshall(MarshalledEntryImpl.java:117)
               at org.infinispan.marshall.core.MarshalledEntryImpl.getKeyBytes(MarshalledEntryImpl.java:89)
               at org.infinispan.persistence.file.SingleFileStore.write(SingleFileStore.java:314)
{code}
Many classes from Apache commons are perfectly OK for serialization:
* {{org.apache.commons.lang3.tuple.MutablePair}}
* {{org.apache.commons.lang3.mutable.MutableInt}}
* {{org.apache.commons.collections4.multimap.ArrayListValuedHashMap}}
* ... and so on

I suggest that [the package check in method {{ExternallyMarshallable#isMarshallablePackage(String pkg)}}|https://github.com/infinispan/infinispan/blob/1f6c1abf046b3dd7d616bed119b6ffeedb3b2146/core/src/main/java/org/infinispan/marshall/core/ExternallyMarshallable.java#L103] is more exact (narrowed).

The issue is relative to ISPN-7591 and ISPN-6906.
            Reporter: Dmitry Katsubo
            Priority: Minor






--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the infinispan-issues mailing list