Skip to content

Supporting platform that has no sun.misc.Unsafe #194

Closed

Description

@xerial

We have got an report that the current msgpack-core doesn't work in GAE. MessageBuffer implementation is designed to achieve the best performance for accessing memory through sun.misc.Unsafe. But Unsafe is not avilable in GAE.

  • Loading sun.misc.Unsafe might fail in GAE.
  • We NEVER create any interface for MessageBuffer because it changes invokevirtual calls to invokeinterface and deteriorates the performance. And also having two or more classes that implement MessageBuffer methods generates TypeProfile. It makes each method call 2x slower.

Activity

  1. added this to the v07 milestone on Feb 6, 2015
  2. changed the title [-]Supporting platform that doesn't have no sun.misc.Unsafe[/-] [+]Supporting platform that has no sun.misc.Unsafe[/+] on Feb 6, 2015
  3. xerial commented on Feb 10, 2015

    @xerial
    MemberAuthor

    I'm working on this task on https://github.com/xerial/msgpack-java/tree/v07-no-unsafe branch.

    I have succeeded in using MessageBufferU, which does not rely on Unsafe class. Another problem is there is no java.nio.DirectByteBuffer class in GAE. I'm seeking a workaround.

  4. xerial commented on Feb 16, 2015

    @xerial
    MemberAuthor

    Just deployed 0.7.0-p7, which supports GAE.

  5. oza commented on Feb 16, 2015

    @oza
    Member

    Good job!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions