Ошибка FOREIGN KEY constraint failed при использовании Room

Не могу понять нюанс работы с Room. Добавление в базу данных связанных через внешний ключ записей получается только так:

int id = (int) database.userDao().insert(user);
Position position = new Position();
position.setUserId(id);
position.setName("programmer");
database.positionDao().insert(position);

Хотя в примерах достаточно так:

database.userDao().insert(user);
database.positionDao().insert(position);

Во втором варианте у меня возникает ошибка FOREIGN KEY constraint failed (code 787). Аннотации настроены:

@Entity(foreignKeys = {@ForeignKey(
        entity = User.class,
        parentColumns = "id",
        childColumns = "userId",
        onDelete = CASCADE)}, indices = {@Index(value = "userId")})
public class Position {
    @PrimaryKey(autoGenerate = true)
    private int id;
    private int userId;
    private String name;
...
}

@Entity
public class User {
    @PrimaryKey(autoGenerate = true)
    private int id;
    private String name;
    private int age;
    private boolean isLogged;
...
}

Ответы (0 шт):