qishibo/AnotherRedisDesktopManager · error

e.message

Error message

e.message

What it means

initShow() chains initInfo() (ARINFO) then listScan(); this outer catch surfaces any failure, clears the loading icon, and disables load-more. ARINFO/ARGREP/ARSET are custom module commands backing the array-type viewer, so against a stock community Redis the most common failure is "ERR unknown command 'ARINFO'"; WRONGTYPE appears when the key is not actually an array-type key.

Source

Thrown at src/components/contents/KeyContentArray.vue:138

      // scroll to bottom while loading more
      if (oldValue.length && (newValue.length > oldValue.length)) {
        setTimeout(() => {
          this.$refs.contentTable && this.$refs.contentTable.scrollTo(0, 99999999);
        }, 0);
      }
    },
  },
  methods: {
    initShow(resetTable = true) {
      resetTable && this.resetTable();
      this.loadingIcon = 'el-icon-loading';

      this.initInfo().then(() => {
        this.listScan();
      }).catch((e) => {
        this.loadingIcon = '';
        this.loadMoreDisable = true;
        this.$message.error(e.message);
      });
    },
    initInfo() {
      return this.client.call('ARINFO', this.redisKey).then((reply) => {
        const info = {};
        if (reply && reply.length) {
          for (let i = 0; i < reply.length; i += 2) {
            info[reply[i]] = reply[i + 1];
          }
        }
        this.infoDict = info;
        this.total = Number(info.count) || 0;
      });
    },
    showInfo() {
      this.initInfo().then(() => {
        this.infoVisible = true;
      }).catch((e) => {

View on GitHub (pinned to c149855106)

Solutions

  1. Confirm the module is loaded: MODULE LIST in the CLI tab, and run ARINFO key manually to see the raw error
  2. Fix the connection profile so the array viewer is only used against module-enabled servers
  3. Install/upgrade the module per your server distribution
  4. Until the viewer backend exists, manage such keys via raw CLI commands
Defensive patterns

Strategy: try-catch

Validate before calling

// probe module availability before rendering the array viewer
const info = await client.command('command', 'info', 'ARINFO');
const moduleLoaded = Array.isArray(info) && info[0];
if (!moduleLoaded) {
  renderCliFallback(key); // instead of a table that can only fail
}

Try / catch

// one catch for the whole init chain, but preserve the raw cause
try {
  await initInfo();
  await listScan();
} catch (e) {
  this.loadingIcon = '';
  this.loadMoreDisable = true;
  // e.message is usually "ERR unknown command 'ARINFO'" or WRONGTYPE - show it verbatim
  this.$message.error(e.message);
}

Prevention

When it happens

Trigger: Opening an array-type key on a server where the AR* module is not loaded (MODULE LIST shows no provider); opening a key routed to this viewer whose actual type differs; connection loss during the initial load.

Common situations: A generic connection profile used against a server lacking the module; module disabled by an ops change; version skew between the module and the app's viewer.

Related errors


AI-assisted analysis of qishibo/AnotherRedisDesktopManager@c149855106 (2026-08-22). Data as JSON: /api/errors/bc7d6f0124da8768. Report an issue: GitHub.