          (.setAttributeType (utils/enum key-type))))
      defs)))
 
-(defn- local-indexes
+(defn- local-2nd-indexes
   "[{:name _ :range-keydef _ :projection _} ...] indexes -> [LocalSecondaryIndex ...]"
   [hash-keydef indexes]
-  (if indexes
+  (when indexes
     (mapv
       (fn [{index-name :name
-            :keys      [range-keydef projection]
-            :or        {projection :all}
-            :as        index}]
+           :keys      [range-keydef projection]
+           :or        {projection :all}
+           :as        index}]
         (assert (and index-name range-keydef projection)
-                (str "Malformed index: " index))
+                (str "Malformed local secondary index (LSI): " index))
         (doto (LocalSecondaryIndex.)
           (.setIndexName (name index-name))
           (.setKeySchema (key-schema hash-keydef range-keydef))

  GlobalSecondaryIndexDescription
  (as-map [d] {:name       (keyword (.getIndexName d))
               :size       (.getIndexSizeBytes d)
               :throughput (as-map (.getProvisionedThroughput d))
               :item-count (.getItemCount d)
               :key-schema (as-map (.getKeySchema d))
               :projection (as-map (.getProjection d))})

  ProvisionedThroughputDescription
  (as-map [d] {:read                (.getReadCapacityUnits d)

     :creation-date (.getCreationDateTime d)
     :item-count    (.getItemCount d)
     :size          (.getTableSizeBytes d)
     :throughput    (as-map (.getProvisionedThroughput  d))
     :indexes       (as-map (.getLocalSecondaryIndexes  d)) ; DEPRECATED
     :lsindexes     (as-map (.getLocalSecondaryIndexes  d))
     :gsindexes     (as-map (.getGlobalSecondaryIndexes d))
     :status        (utils/un-enum (.getTableStatus d))
     :prim-keys
     (let [schema (as-map (.getKeySchema d))
