View Issue Details

IDProjectCategoryView StatusLast Update
0007759Talerwallet (Android App)public2023-04-04 17:33
Reportersebasjm Assigned Togrote Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PriorityhighSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.9.2 
Summary0007759: qtart crash when the exchange as a big tos
DescriptionThis error was seen in the debug logs.

There is one big exchange Tos (format html) which is 600k. After removing scripts and css it was reduced to 20k and then adding the exchange to the wallet worked.

Although, it may be the case that the second time another format was provided by the exchange.

03-09 10:25:11.476 28250 28273 I WalletBackendApi: sending request for operation getExchangeTos (24)
03-09 10:25:11.476 28250 28273 I WalletBackendApi: {
03-09 10:25:11.476 28250 28273 I WalletBackendApi: "exchangeBaseUrl": "http:\/\/exchange.taler\/"
03-09 10:25:11.476 28250 28273 I WalletBackendApi: }
03-09 10:25:11.477 28272 28272 I taler-wallet-backend: got request for operation getExchangeTos
03-09 10:25:11.478 28272 28272 I taler-wallet-backend: mapping service request ID 24 to client request ID 24
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: got back response: {
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "type": "response",
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "operation": "getExchangeTos",
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "id": 24,
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "result": {
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "currentEtag": "unknown",
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "content": "<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\"\/>\n<meta content=\"width=device-width, initial-scale=1.0\" name=\"viewport\"\/>\n<title>Terms Of Service — Taler Exchange Terms of Service<\/title>\n<link href=\"data:text\/css,pre%20%7B%20line-height%3A%20125%25%3B%20margin%3A%200%3B%20%7D%0Atd.linenos%20pre%20%7B%20color%3A%20%23000000%3B%20background-color%3A%20%23f0f0f0%3B%20padding%3A%200%205px%200%205px%3B%20%7D%0Aspan.linenos%20%7B%20color%3A%20%23000000%3B%20background-color%3A%20%23f0f0f0%3B%20padding%3A%200%205px%200%205px%3B%20%7D%0Atd.linenos%20pre.special%20%7B%20color%3A%20%23000000%3B%20background-color%3A%20%23ffffc0%3B%20padding%3A%200%205px%200%205px%3B%20%7D%0Aspan.linenos.special%20%7B%20color%3A%20%23000000%3B%20background-color%3A%20%23ffffc0%3B%20padding%3A%200%205px%200%205px%3B%20%7D%0A.highlight%20.hll%20%7B%20background-color%3A%20%23ffffcc%20%7D%0A.highlight%20%7B%20background%3A%20%23eeffcc%3B%20%7D%0A.highlight%20.c%20%7B%20color%3A%20%23408090%3B%20font-style%3A%20italic%20%7D%20\/%2A%20Comment%20%2A\/%0A.highlight%20.err%20%7B%20border%3A%201px%20solid%20%23FF0000%20%7D%20\/%2A%20Error%20%2A\/%0A.highlight%20.k%20%7B%20color%3A%20%23007020%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Keyword%20%2A\/%0A.highlight%20.o%20%7B%20color%3A%20%23666666%20%7D%20\/%2A%20Operator%20%2A\/%0A.highlight%20.ch%20%7B%20color%3A%20%23408090%3B%20font-style%3A%20italic%20%7D%20\/%2A%20Comment.Hashbang%20%2A\/%0A.highlight%20.cm%20%7B%20color%3A%20%23408090%3B%20font-style%3A%20italic%20%7D%20\/%2A%20Comment.Multiline%20%2A\/%0A.highlight%20.cp%20%7B%20color%3A%20%23007020%20%7D%20\/%2A%20Comment.Preproc%20%2A\/%0A.highlight%20.cpf%20%7B%20color%3A%20%23408090%3B%20font-style%3A%20italic%20%7D%20\/%2A%20Comment.PreprocFile%20%2A\/%0A.highlight%20.c1%20%7B%20color%3A%20%23408090%3B%20font-style%3A%20italic%20%7D%20\/%2A%20Comment.Single%20%2A\/%0A.highlight%20.cs%20%7B%20color%3A%20%23408090%3B%20background-color%3A%20%23fff0f0%20%7D%20\/%2A%20Comment.Special%20%2A\/%0A.highlight%20.gd%20%7B%20color%3A%20%23A00000%20%7D%20\/%2A%20Generic.Deleted%20%2A\/%0A.highlight%20.ge%20%7B%20font-style%3A%20italic%20%7D%20\/%2A%20Generic.Emph%20%2A\/%0A.highlight%20.gr%20%7B%20color%3A%20%23FF0000%20%7D%20\/%2A%20Generic.Error%20%2A\/%0A.highlight%20.gh%20%7B%20color%3A%20%23000080%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Generic.Heading%20%2A\/%0A.highlight%20.gi%20%7B%20color%3A%20%2300A000%20%7D%20\/%2A%20Generic.Inserted%20%2A\/%0A.highlight%20.go%20%7B%20color%3A%20%23333333%20%7D%20\/%2A%20Generic.Output%20%2A\/%0A.highlight%20.gp%20%7B%20color%3A%20%23c65d09%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Generic.Prompt%20%2A\/%0A.highlight%20.gs%20%7B%20font-weight%3A%20bold%20%7D%20\/%2A%20Generic.Strong%20%2A\/%0A.highlight%20.gu%20%7B%20color%3A%20%23800080%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Generic.Subheading%20%2A\/%0A.highlight%20.gt%20%7B%20color%3A%20%230044DD%20%7D%20\/%2A%20Generic.Traceback%20%2A\/%0A.highlight%20.kc%20%7B%20color%3A%20%23007020%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Keyword.Constant%20%2A\/%0A.highlight%20.kd%20%7B%20color%3A%20%23007020%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Keyword.Declaration%20%2A\/%0A.highlight%20.kn%20%7B%20color%3A%20%23007020%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Keyword.Namespace%20%2A\/%0A.highlight%20.kp%20%7B%20color%3A%20%23007020%20%7D%20\/%2A%20Keyword.Pseudo%20%2A\/%0A.highlight%20.kr%20%7B%20color%3A%20%23007020%3B%20font-weight%3A%20bold%20%7D%20\/%2A%20Keyword.Reserved%20%2A\/%0A.highlight%20.kt%20%7B%20color%3A%20%23902000%20%7D%20\/%2A%20Keyword.Type%20%2A\/%0A.highlight%20.m%20%7B%20color%3A%20%23208050%20%7D%20\/%2A%20Literal.Number%20%2A\/%0A.highlight%20.s%20%7B%20color%3A%20%234070a0%20%7D%20\/%2A%20Literal.String%20%2A\/%0A.highlight%20.na%20%7B%20color%3A%20%234070a0%20%7D%20\/%2A%20Name.Attribute%20%2A\/%0A.highlight%20.nb%20%7B%20color%3A%20%23007020%20%7D%20\/%2A%20Name.Builtin%20%2A\/%0A.highlight%20.nc%20%7B%20color%3
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "contentType": "text\/plain",
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: "tosStatus": "new"
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: }
03-09 10:25:12.033 28272 28296 V taler-wallet-backend: }
03-09 10:25:12.055 28272 28296 E JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 1324060)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: JNA: Callback net.taler.qtart.TalerWalletCore$setMessageHandler$1@ea94a1d threw the following exception
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: android.os.TransactionTooLargeException: data parcel size 1324060 bytes
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at android.os.BinderProxy.transactNative(Native Method)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at android.os.BinderProxy.transact(BinderProxy.java:571)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at android.os.IMessenger$Stub$Proxy.send(IMessenger.java:125)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at android.os.Messenger.send(Messenger.java:59)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at net.taler.wallet.backend.WalletBackendService.handleResponse(WalletBackendService.kt:256)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at net.taler.wallet.backend.WalletBackendService.handleAkonoMessage(WalletBackendService.kt:230)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at net.taler.wallet.backend.WalletBackendService.access$handleAkonoMessage(WalletBackendService.kt:43)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at net.taler.wallet.backend.WalletBackendService$onCreate$1.invoke(WalletBackendService.kt:63)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at net.taler.wallet.backend.WalletBackendService$onCreate$1.invoke(WalletBackendService.kt:62)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at net.taler.qtart.TalerWalletCore$setMessageHandler$1.invoke(TalerWalletCore.kt:79)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at java.lang.reflect.Method.invoke(Native Method)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at com.sun.jna.CallbackReference$DefaultCallbackProxy.invokeCallback(CallbackReference.java:585)
03-09 10:25:12.064 28272 28296 W com.sun.jna.Native: at com.sun.jna.CallbackReference$DefaultCallbackProxy.callback(CallbackReference.java:616)
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

avalos

2023-03-09 15:44

developer   ~0019941

This is not an issue with wallet-core or qtart, but rather an issue with Android IPC. There's a limit of data that can be exchanged between the app and the service at once, and there's nothing we can do to increase the limit other than simply refactoring the app to not use a service, and thus not do IPC. This issue is known already. Torsten said he would refactor the app to not use a service.

grote

2023-03-28 16:37

reporter   ~0019983

resolved in https://git.taler.net/taler-android.git/commit/?id=ffe67691fe7ad995113eacb0ee5785f51e0051de

The transfer amount should now be only limited by RAM available to our JVM.

Issue History

Date ModifiedUsernameFieldChange
2023-03-09 13:50sebasjmNew Issue
2023-03-09 13:50sebasjmStatusnew => assigned
2023-03-09 13:50sebasjmAssigned To => Florian Dold
2023-03-09 15:44avalosNote Added: 0019941
2023-03-09 15:45avalosAssigned ToFlorian Dold => grote
2023-03-09 15:45avalosCategoryqtart => wallet (Android App)
2023-03-09 15:51avalosRelationship addedrelated to 0007758
2023-03-09 15:52avalosRelationship deletedrelated to 0007758
2023-03-28 16:37groteStatusassigned => informing
2023-03-28 16:37groteResolutionopen => fixed
2023-03-28 16:37groteNote Added: 0019983
2023-04-04 17:33Florian DoldStatusinforming => closed