Disk i/o error while executing Query

Hi,

We are currently facing the following exception while executing a query in our android application.

QueryBuilder.select(SelectResult.expression(Function.count(Expression.string("*"))).as(GuestStatusFields.COUNT),
SelectResult.property(GuestStatusFields.CHECK_IN_STATUS),
SelectResult.property(GuestStatusFields.IS_ON_BOARDED),
SelectResult.property(GuestStatusFields.EMBARK_DATE_EPOCH),
SelectResult.property(GuestStatusFields.DEBARK_DATE_EPOCH),
SelectResult.property(GuestStatusFields.IS_VALIDATION_SUCCESSFUL))
.from(dataSource)
.where(Expression.property(GuestStatusFields.TYPE).equalTo(Expression.string(GuestStatusFields.DOCUMENT_NAME)))
.groupBy(Expression.property(GuestStatusFields.CHECK_IN_STATUS),
Expression.property(GuestStatusFields.IS_ON_BOARDED),
Expression.property(GuestStatusFields.EMBARK_DATE_EPOCH),
Expression.property(GuestStatusFields.DEBARK_DATE_EPOCH),
Expression.property(GuestStatusFields.IS_VALIDATION_SUCCESSFUL))

We are facing the following exception while executing the query

Some other logs that we can see are =>
Query encoded as {“GROUP_BY”:[[".CheckinStatus"],[".IsOnBoarded"],[".EmbarkDateEpoch"],[".DebarkDateEpoch"],[".IsValidationSuccessful"]],“LIMIT”:10,“WHAT”:[[“COUNT()”,"*"],[".CheckinStatus"],[".IsOnBoarded"],[".EmbarkDateEpoch"],[".DebarkDateEpoch"],[".IsValidationSuccessful"]],“WHERE”:["=",[".type"],“GuestStatus”]}

2019-04-08 20:00:17.931 11477-11512/com.decurtis.dxp.gangway.qa1 I/LiteCore [Query]: {Query#9}==> N8litecore11SQLiteQueryE 0xd3caba9c

2019-04-08 20:00:17.931 11477-11512/com.decurtis.dxp.gangway.qa1 I/LiteCore [Query]: {Query#9} Compiling JSON query: {“GROUP_BY”:[[".CheckinStatus"],[".IsOnBoarded"],[".EmbarkDateEpoch"],[".DebarkDateEpoch"],[".IsValidationSuccessful"]],“LIMIT”:10,“WHAT”:[[“COUNT()”,"*"],[".CheckinStatus"],[".IsOnBoarded"],[".EmbarkDateEpoch"],[".DebarkDateEpoch"],[".IsValidationSuccessful"]],“WHERE”:["=",[".type"],“GuestStatus”]}

2019-04-08 20:00:17.931 11477-11512/com.decurtis.dxp.gangway.qa1 I/LiteCore [Query]: {Query#9} Compiled as SELECT fl_result(count(’*’)), fl_result(fl_value(body, ‘CheckinStatus’)), fl_result(fl_value(body, ‘IsOnBoarded’)), fl_result(fl_value(body, ‘EmbarkDateEpoch’)), fl_result(fl_value(body, ‘DebarkDateEpoch’)), fl_result(fl_value(body, ‘IsValidationSuccessful’)) FROM kv_default WHERE (fl_value(body, ‘type’) = ‘GuestStatus’) AND (flags & 1) = 0 GROUP BY fl_value(body, ‘CheckinStatus’), fl_value(body, ‘IsOnBoarded’), fl_value(body, ‘EmbarkDateEpoch’), fl_value(body, ‘DebarkDateEpoch’), fl_value(body, ‘IsValidationSuccessful’) LIMIT MAX(0, 10)

2019-04-08 20:00:18.089 11477-11512/com.decurtis.dxp.gangway.qa1 W/LiteCore: SQLite error (code 6410): statement aborts at 29: [SELECT fl_result(count(’*’)), fl_result(fl_value(body, ‘CheckinStatus’)), fl_result(fl_value(body, ‘IsOnBoarded’)), fl_result(fl_value(body, ‘EmbarkDateEpoch’)), fl_result(fl_value(bod

2019-04-08 20:00:18.090 11477-11512/com.decurtis.dxp.gangway.qa1 W/LiteCore: SQLite error (code 1): statement aborts at 1: [RELEASE SAVEPOINT roTransaction] no such savepoint: roTransaction

2019-04-08 20:00:18.090 11477-11512/com.decurtis.dxp.gangway.qa1 W/LiteCore: ~ReadOnlyTransaction caught C++ exception in endReadOnlyTransaction

The same query seems to be working on a smaller data set.
We currently have around 10,000 documents that will fall under this query.

Has anyone else encountered the same issue?
We are using currently using Couchbase Lite Version 2.1.2.
Any suggestions are welcome!

This is the issue that SQLite cannot find a temp directory. We have fixed this issue in the coming release 2.5.0.

Thanks @pasin for the reply.
Is there any workaround we can use until we get the next release.

@pasin when this release is coming. We are blocked due to this issue. So we want to know the timeline.

It is currently in the QE process. I don’t have an exact time but could be in late April or some time in May. Can you link with the source directly in Github at least for your development?