getISRCMeta <- function(..., spotify=TRUE, drop_parent="auto", aggregate_by_isrc=FALSE, verbose=TRUE) {

  dots <- list(...)
  tf <- sapply(dots, is.logical)
  if (sum(tf) == 1) {
    spotify <- unlist(dots[tf])
    dots[tf] <- NULL
  }

  if (!length(dots))
    stop("Hey, that's not an ISRC!")
  
  isrc <- trim(unlist(dots))

  if (is.null(spotify))
    spotify <- FALSE

  ## META DATA
  subqry <- "SELECT DISTINCT release_parent_upc as parent_upc, releaseid as upc, release_parent_name, release_name, TR.ISRC AS ISRC, TR.TRACKNAME
  FROM production.dim_track Tr
  LEFT JOIN bi.release_product_view R ON R.releaseid = TR.UPC
  WHERE ISRC in %1$s
  "

  spot_uri_subqry <- "  LEFT JOIN (SELECT ISRC, min(track_uri) AS track_uri FROM  spot_metadata.iscr_to_track_uri WHERE ISRC IN %1$s GROUP BY 1) Spot ON Spot.isrc = F.isrc"


  qry_meta <- sprintf(
  "SELECT C.client_manager, L.labelid, L.labelname as label_name
        , A.artistid, A.artistname as artist_name
        , parent_upc, release_parent_name
        , UPC, release_name, G.GENRENAME as release_genre
        , R.sale_start_date::date as release_sale_start_date
        , R.releasedate::date as release_date
        , F.ISRC, trackname AS track_name
        %s
  FROM (%s) F
  LEFT JOIN production.dim_release R  ON F.UPC = R.releaseid
  LEFT JOIN production.dim_genre G  ON R.genreid = G.genreid
  LEFT JOIN bi.client_managers_by_label C ON C.labelid = R.labelid
  LEFT JOIN production.dim_label L ON L.labelid = R.labelid
  LEFT JOIN production.dim_artist A ON A.artistid = R.artistid
  %s
  ", ifelse(spotify, ", Spot.track_uri", ""), subqry, ifelse(spotify, spot_uri_subqry, ""))

  DT <- setIDCols(sfQry(sprintf(qry_meta, pasteQ(isrc)), verbose=verbose))

  if (spotify)
    DT[, track_url := gsub("^spotify", "http://open.spotify.com", gsub(":", "/", track_uri))]

  ##  optionally drop the parent upc & name columns
  ##  ------------------------------------------------------
    if (identical(drop_parent, "auto") && nrow(DT)) {
        if (all(DT$upc == DT$parent_upc) && all(DT$release_name == DT$parent_release_name)) {
            verboseMsg(verbose, "Dropping the parent cols since identical")
            drop_parent <- TRUE
    }}

    if (is.na(drop_parent) || is.null(drop_parent) || !is.logical(drop_parent))
      drop_parent <- FALSE

    if (drop_parent)
      DT[, c("parent_upc", "parent_release_name") := NULL]
  ##  ------------------------------------------------------

  if (aggregate_by_isrc) {
    DT[, track_name := removeText("\\(.*\\)$", track_name)]
    DT[, release_name := removeText("\\(.*\\)$", release_name)]

    DT[, N.artist_label_rel_by_isrc := nrow(unique(.SD, by=c("artist_name", "label_name", "release_name"))), by=isrc]

    aggCols <- names(DT) %>% setdiff("isrc")
    DT <- DT[, cbind(.SD[1], N_by_isrc = .N), keyby=isrc, .SDcols=aggCols]
  }

  return(DT[])
}
