View Issue Details

IDProjectCategoryView StatusLast Update
0007759Talerwallet (Android App)public2023-04-04 19:33
Reportersebasjm Assigned Togrote  
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.

Activities

avalos

2023-03-09 16: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 18:37

developer   ~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 Modified Username Field Change
2023-03-09 14:50 sebasjm New Issue
2023-03-09 14:50 sebasjm Status new => assigned
2023-03-09 14:50 sebasjm Assigned To => Florian Dold
2023-03-09 16:44 avalos Note Added: 0019941
2023-03-09 16:45 avalos Assigned To Florian Dold => grote
2023-03-09 16:45 avalos Category qtart => wallet (Android App)
2023-03-09 16:51 avalos Relationship added related to 0007758
2023-03-09 16:52 avalos Relationship deleted related to 0007758
2023-03-28 18:37 grote Status assigned => resolved
2023-03-28 18:37 grote Resolution open => fixed
2023-03-28 18:37 grote Note Added: 0019983
2023-04-04 19:33 Florian Dold Status resolved => closed