code: def _get_meta(
      self,
      object_id: str,
      fields: List[str] = None,
      error: str = "raise",
  ) -> Dict:
      if error not in ("raise", "ignore"):  # pragma: no cover
          raise ValueError("error must be raise or ignore")
      try:
          meta = self._store[object_id]
          if fields is None:
              fields = _get_meta_fields(type(meta))
          return {k: getattr(meta, k) for k in fields}
      except KeyError:
          if error == "raise":
              raise
          else:
              return
  
file_path: mars/mars/services/meta/store/dictionary.py
imports: import functools
  from collections import defaultdict
  from dataclasses import fields
  from typing import Dict, List
  from ....None import oscar
  from ....lib.ordered_set import OrderedSet
  from ....utils import implements
  from ....typing import BandType
  from ..core import _CommonMeta, _ChunkMeta
  from .base import AbstractMetaStore, register_meta_store
label_desc: Use image node_id 3 for calling the DictMetaStore obj's underlying member method code with example usage: obj._get_meta(object_id, fields, error) and returns: unknown