diff --git a/core/java/android/database/AbstractCursor.java b/core/java/android/database/AbstractCursor.java index 581fe7fce5ebb..fdb702f01e9d9 100644 --- a/core/java/android/database/AbstractCursor.java +++ b/core/java/android/database/AbstractCursor.java @@ -23,6 +23,7 @@ import android.os.UserHandle; import android.util.Log; import java.lang.ref.WeakReference; +import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -330,7 +331,14 @@ public abstract class AbstractCursor implements CrossProcessCursor { public int getColumnIndexOrThrow(String columnName) { final int index = getColumnIndex(columnName); if (index < 0) { - throw new IllegalArgumentException("column '" + columnName + "' does not exist"); + String availableColumns = ""; + try { + availableColumns = Arrays.toString(getColumnNames()); + } catch (Exception e) { + Log.d(TAG, "Cannot collect column names for debug purposes", e); + } + throw new IllegalArgumentException("column '" + columnName + + "' does not exist. Available columns: " + availableColumns); } return index; }