[ 
https://issues.apache.org/jira/browse/AVRO-2863?focusedWorklogId=660813&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-660813
 ]

ASF GitHub Bot logged work on AVRO-2863:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 06/Oct/21 09:49
            Start Date: 06/Oct/21 09:49
    Worklog Time Spent: 10m 
      Work Description: RyanSkraba merged pull request #1347:
URL: https://github.com/apache/avro/pull/1347


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 660813)
    Time Spent: 1h  (was: 50m)

> [Java] Support avro core functionality on Android
> -------------------------------------------------
>
>                 Key: AVRO-2863
>                 URL: https://issues.apache.org/jira/browse/AVRO-2863
>             Project: Apache Avro
>          Issue Type: Wish
>          Components: java
>    Affects Versions: 1.9.0, 1.9.1, 1.9.2
>         Environment: Android 5.0.2 (API 21) up to the latest Android version, 
> using Android Gradle plugin version 4.0.0.
>            Reporter: Joris Borgdorff
>            Assignee: Ryan Skraba
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.11.0
>
>          Time Spent: 1h
>  Remaining Estimate: 0h
>
> One of our Android apps uses Avro to communicate with the server. Up to 
> vision 1.8.2, it used a subset of the Avro library that was needed to perform 
> this communication. It does not use any of the compress codecs and keeps the 
> use of reflection to a minimum. Since Avro 1.9.0 a few blocking 
> incompatibilities have been introduced. This prevents us from using any of 
> the developments in Avro version 1.9.x, including the updated Jackson 
> dependency.
> org.apache.avro.Schema uses ThreadLocal.withInitial, only available with 
> Android API 26 (Android 8.0)
> org.apache.avro.reflect.ReflectUtils uses Method.invokeExact, not available 
> on Android
> org.apache.avro.reflect.ReflectData uses java.lang.ClassValue, not available 
> on Android
> I've experimented with excluding the org.apache.avro.reflect from the 
> distribution (except MapEntry, which is used elsewhere) and providing my own 
> java.lang.ClassValue implementation. This resolves all build and runtime 
> issues for Android API 26 and above except for ThreadLocal.withInitial, which 
> cannot be circumvented.
> For now the Android app will keep using 1.8.2, but we would prefer to use 
> 1.9.2 or later.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to