equalTo() is not working when we have two conditions on the same field
sanjoytech4 opened this issue · 6 comments
How frequently does the bug occur?
Always
Description
We have a type
field. We need the list of data from DB where (type == "ABSENCE" or type == " PUBLIC_HOLIDAY"). But we are getting data of type == "ABSENCE" only
val query = realm.where(TimeOffEvents::class.java)
val iterator = types.split(",").toTypedArray()
query.equalTo("type", iterator[0]).or().equalTo("type", iterator[1])
query.sort("startDate", Sort.ASCENDING).findAllAsync()
Stacktrace & log output
No response
Can you reproduce the bug?
Always
Reproduction Steps
No response
Version
10.17.0
What Atlas App Services are you using?
Local Database only
Are you using encryption?
No
Platform OS and version(s)
Android
Build environment
Android Studio version: Android Studio Jellyfish | 2023.3.1 Patch 1
Android Build Tools version: ...
Gradle version: 8.2.2
➤ PM Bot commented:
Jira ticket: RJAVA-1262
Just to get a better understanding - in the following code snippet, results
will not contain the PUBLIC_HOLIDAY
entries?
val query = realm.where(TimeOffEvents::class.java)
val iterator = types.split(",").toTypedArray()
val results: RealmResults<TimeOffEvent> = query.equalTo("type", iterator[0]).or().equalTo("type", iterator[1]).sort("startDate", Sort.ASCENDING).findAll()
@kneth Yes, results
do not contain the PUBLIC_HOLIDAY
entries.
@sanjoytech4 Please provide more information e.g., the exact value of types
and the TimeOffEvent
class.
@kneth
Here is TimeOffEvents class & type Value could be ABSENCE
, PUBLIC_HOLIDAY
, NON_WORKING_DAY
open class TimeOffEvents : RealmObject() {
var externalCode: String? = ""
var title: String? = ""
var startDate: Date? = null
var endDate: Date? = null
var startTime: String? = ""
var endTime: String? = ""
var duration: Double = 0.0
var timeUnit: String? = ""
var durationFormatted: String? = ""
var crossMidnight: Boolean = false
var type: String? = ""
}
@kneth Any update on this?