Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-8866

UpdateLog should throw an exception when serializing unknown types

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 6.1
    • Component/s: None
    • Labels:
      None

      Description

      When JavaBinCodec encounters a class it doesn't have explicit knowledge of how to serialize, nor does it implement the ObjectResolver interface, it currently serializes the object as the classname, colon, then toString() of the object.

      This may appear innocent but not throwing an exception hides bugs. One example is that the UpdateLog, which uses JavaBinCodec, to save a document. The result is that this bad value winds up there, gets deserialized as a String in PeerSync (which uses /get) and then this value pretends to be a suitable value to the final document in the leader. But of course it isn't.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                dsmiley David Smiley
                Reporter:
                dsmiley David Smiley
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: