Я определил эту функцию в комнате:
import androidx.room.Dao
import androidx.room.Insert
import androidx.room.OnConflictStrategy
import androidx.room.Quer
@Dao
interface PlaceDao {
@Query("SELECT * from place_table")
suspend fun getAllPlaces(): List<Place>
// This query throws IndexOutOfBoundsException
@Query("SELECT * FROM place_table WHERE masterId IN (:guid)")
suspend fun getPlacesByGuids(guid: List<String>): List<Place>?
}
Но всякий раз, когда я вызываю getPlacesByGuids
прохождение списка гидов, для которых нет места в place_table
, вместо возврата пустого списка или нуляон выбрасывает IndexOutOfBoundException. getAllPlaces
, с другой стороны, кажется, работает нормально, даже если в place_table
ничего нет и не приводит к исключению. Есть идеи о том, что мне здесь не хватает?