Uploaded image for project: 'Brooklyn'
  1. Brooklyn
  2. BROOKLYN-453

Rebinding fails when using class-renames with bundle prefixes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • None
    • 0.11.0
    • None

    Description

      I have some persisted state from an older version of Brooklyn (but still 0.11.0-SNAPSHOT, from January). This includes a reference to org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier - note the bundle name prefix.

      In the `deserializingClassRenames.properties`, there is an entry for:

      org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier : org.apache.brooklyn.feed.AbstractCommandFeed$CommandPollIdentifier
      

      However, this is not used - rebind therefore fails with an error like:

      2017-03-15 18:25:26,721 WARN  120 o.a.b.c.m.p.RetryingMementoSerializer [ooklyn-persister] Error deserializing memento (attempt 4 of 5): com.thoughtworks.xstream.converters.ConversionException: Could not call com.google.common.collect.HashMultimap.readObject() : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier via loadClass : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier
      ---- Debugging information ----
      message             : Could not call com.google.common.collect.HashMultimap.readObject()
      cause-exception     : com.thoughtworks.xstream.mapper.CannotResolveClassException
      cause-message       : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier via loadClass : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier
      class               : com.google.common.collect.HashMultimap
      required-type       : com.google.common.collect.HashMultimap
      converter-type      : com.thoughtworks.xstream.converters.reflection.SerializableConverter
      path                : /feed/config/polls/com.google.guava:com.google.common.collect.HashMultimap/com.google.guava:com.google.common.collect.HashMultimap/org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier
      line number         : 24
      class[1]            : java.util.LinkedHashMap
      converter-type[1]   : org.apache.brooklyn.util.core.xstream.StringKeyMapConverter
      class[2]            : org.apache.brooklyn.core.mgmt.rebind.dto.BasicFeedMemento
      converter-type[2]   : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
      version             : 0.11.0-20170314.1743
      -------------------------------
      com.thoughtworks.xstream.converters.ConversionException: Could not call com.google.common.collect.HashMultimap.readObject() : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier via loadClass : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier
      ---- Debugging information ----
      message             : Could not call com.google.common.collect.HashMultimap.readObject()
      cause-exception     : com.thoughtworks.xstream.mapper.CannotResolveClassException
      cause-message       : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier via loadClass : org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier
      class               : com.google.common.collect.HashMultimap
      required-type       : com.google.common.collect.HashMultimap
      converter-type      : com.thoughtworks.xstream.converters.reflection.SerializableConverter
      path                : /feed/config/polls/com.google.guava:com.google.common.collect.HashMultimap/com.google.guava:com.google.common.collect.HashMultimap/org.apache.brooklyn.core:org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier
      line number         : 24
      class[1]            : java.util.LinkedHashMap
      converter-type[1]   : org.apache.brooklyn.util.core.xstream.StringKeyMapConverter
      class[2]            : org.apache.brooklyn.core.mgmt.rebind.dto.BasicFeedMemento
      converter-type[2]   : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
      version             : 0.11.0-20170314.1743
      -------------------------------
      

      Attachments

        Activity

          People

            aled.sage Aled Sage
            aled.sage Aled Sage
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: