Room возвращает IndexOutOfBoundException, если нет доступных результатов - PullRequest
1 голос
/ 09 октября 2019

Я определил эту функцию в комнате:

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 ничего нет и не приводит к исключению. Есть идеи о том, что мне здесь не хватает?

...