Result.getString("_id"): Officially changed in DB22?

query

#1

[In a Resultset,]
In DB21 calling getString("_id") returned the id, whereas in DB22 it returns null.
BUT all is ok because in DB22 calling getString(“id”) now returns the id.
Simple snippet to clarify follows. (Please note comments in code.)

private void executeQueryTest(Query query) {
    ResultSet rs = null;
    try {
        rs = query.execute();
        for (Result row : rs){
            System.out.println("Result.getString(id)) = " + row.getString("_id")); //DB21 ok, DB22=null
            System.out.println("Result.getString(id)) = " + row.getString("id")); //DB22 ok
        }
    } catch (CouchbaseLiteException e) {
        e.printStackTrace();
    }
}

My question basically is if this is now official api, or an error and it should really be _id?
Thanks,
nat


#2

Yes, that’s correct. If you requested Meta.id in your select clause of your query, then you will use id key to fetch Id value.