Rank 2: Process
[SOLVED] - creash when i try to use incrementRowColumn
Votes
0
Replies
24
Participants
4
Messages
25
Rank 2: Process
nice response team, i think now time to change the db
thanks for sharing this, i have assigned the issue to myself and take a look shortly
apologies for the wait 🙏
Rank 2: Process
still this problem not solve
sorry for the wait, i have the backlog ticket assigned but currenly stuck with other higher priority tickets. will see if i can find quick fix this weekend
Rank 2: Process
No problem brother, when you try to solve it that time if you need help for testing then tell me
@GHOST debugged, looks like tableId is missing from the API response itself. i have alerted the db team about it, thanks for your paitence 🙏
Rank 2: Process
What the hack, i was thinking that db give invalid response
ha yeah not returning tableid is invalid response, it should return entire Row model. if u check ur data after making call u can see the column is incrementing successfully
Rank 2: Process
Yes, column is incrementing and get error regarding the row data
update: fix is underday, PR has been raised
Rank 2: Process
thanks buddy
Rank 2: Process
also check the https://appwrite.io/docs/products/databases/operators
tables.updateRow(
databaseId = databaseId, tableId = ownerTable, rowId = rowId, data = mapOf(
"area_count" to Operator.decrement(1)
)
)
with this also get the "Server Error" so make
Rank 2: Process
any update on this one ? @Chirag Aggarwal
pretty sure it was merged and released, right @Arnab Chatterjee ?
Yep
Still getting the issue?
Rank 2: Process
yes ,
2025-12-31 04:07:42.548 32487-5630 AndroidRuntime pid-32487 E FATAL EXCEPTION: OkHttp Dispatcher
Process: com.h2osupply.owner, PID: 32487
java.lang.NullPointerException: null cannot be cast to non-null type kotlin.String
at io.appwrite.models.Row$Companion.from(Row.kt:98)
at io.appwrite.services.TablesDB$incrementRowColumn$converter$1.invoke(TablesDB.kt:751)
at io.appwrite.services.TablesDB$incrementRowColumn$converter$1.invoke(TablesDB.kt:749)
at io.appwrite.Client$awaitResponse$2$1.onResponse(Client.kt:602)
at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1154)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:652)
at java.lang.Thread.run(Thread.java:1563)
sdkForAndroid = "11.4.0"
sdk-for1-android = { module = "io.appwrite:sdk-for-android", version.ref = "sdkForAndroid" }
Rank 2: Process
@Arnab Chatterjee & @Chirag Aggarwal also there is problem with this funcation :
also check the https://appwrite.io/docs/products/databases/operators
tables.updateRow(
databaseId = databaseId, tableId = ownerTable, rowId = rowId, data = mapOf(
"area_count" to Operator.decrement(1)
)
)
with this also get the "Server Error" so make
Rank 2: Process
also decrement not work
arnab is looking into reproducing it as we believe it should be fixed, can you try share a small reproducable example as well?
i see by logs ur using android sdk, so might be sdk specific issue too
Rank 3: Container
this is the file and the discord can be allowed to pass it, so check it out.
Rank 3: Container
i have try to understand but in database and tabledb both has same code and also can you tell me how to see what are the responce from this :
return client.call(
"PATCH",
apiPath,
apiHeaders,
apiParams,
responseType = classOf(),
converter,
) ?
thank you, cc @user
Rank 3: Container
at io.appwrite.models.Row$Companion.from(Row.kt:98) == databaseId = map["$databaseId"] as String,
from this :
companion object {
operator fun invoke(
id: String,
sequence: Long,
tableId: String,
databaseId: String,
createdAt: String,
updatedAt: String,
permissions: List,
data: Map<String, Any>
) = Row<Map<String, Any>>(
id,
sequence,
tableId,
databaseId,
createdAt,
updatedAt,
permissions,
data
)
@Suppress("UNCHECKED_CAST")
fun <T> from(
map: Map<String, Any>,
nestedType: Class<T>
) = Row<T>(
id = map["\$id"] as String,
sequence = (map["\$sequence"] as Number).toLong(),
tableId = map["\$tableId"] as String,
databaseId = map["\$databaseId"] as String,
createdAt = map["\$createdAt"] as String,
updatedAt = map["\$updatedAt"] as String,
permissions = map["\$permissions"] as List<String>,
data = map["data"]?.jsonCast(to = nestedType) ?: map.jsonCast(to = nestedType)
)
}
at io.appwrite.services.TablesDB$incrementRowColumn$converter$1.invoke(TablesDB.kt:751) at io.appwrite.services.TablesDB$incrementRowColumn$converter$1.invoke(TablesDB.kt:749) == val converter: (Any) -> io.appwrite.models.Row = {
@Suppress("UNCHECKED_CAST")
io.appwrite.models.Row.from(map = it as Map<String, Any>, nestedType)
}