instantdb/instant

Fetch Failed: too much in CLI

Closed this issue · 4 comments

Whenever i use cli, there is 70% chance it give "Fetch Failed error". My internet is relatively good for a CLI to work!.

image

full error

Planning...
node:internal/deps/undici/undici:13178
      Error.captureStackTrace(err);
            ^

TypeError: fetch failed
    at node:internal/deps/undici/undici:13178:13
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async fetchJson (file:///usr/local/lib/node_modules/instant-cli/index.js:531:15)
    at async pushSchema (file:///usr/local/lib/node_modules/instant-cli/index.js:378:19) {
  [cause]: AggregateError [ETIMEDOUT]: 
      at internalConnectMultiple (node:net:1118:18)
      at internalConnectMultiple (node:net:1186:5)
      at Timeout.internalConnectMultipleTimeout (node:net:1712:5)
      at listOnTimeout (node:internal/timers:583:11)
      at process.processTimers (node:internal/timers:519:7) {
    code: 'ETIMEDOUT',
    [errors]: [
      Error: connect ETIMEDOUT 172.67.149.9:443
          at createConnectionError (node:net:1648:14)
          at Timeout.internalConnectMultipleTimeout (node:net:1707:38)
          at listOnTimeout (node:internal/timers:583:11)
          at process.processTimers (node:internal/timers:519:7) {
        errno: -110,
        code: 'ETIMEDOUT',
        syscall: 'connect',
        address: '172.67.149.9',
        port: 443
      },
      Error: connect ENETUNREACH 2606:4700:3035::ac43:9509:443 - Local (:::0)
          at internalConnectMultiple (node:net:1182:16)
          at Timeout.internalConnectMultipleTimeout (node:net:1712:5)
          at listOnTimeout (node:internal/timers:583:11)
          at process.processTimers (node:internal/timers:519:7) {
        errno: -101,
        code: 'ENETUNREACH',
        syscall: 'connect',
        address: '2606:4700:3035::ac43:9509',
        port: 443
      },
      Error: connect ETIMEDOUT 104.21.29.133:443
          at createConnectionError (node:net:1648:14)
          at Timeout.internalConnectMultipleTimeout (node:net:1707:38)
          at listOnTimeout (node:internal/timers:583:11)
          at process.processTimers (node:internal/timers:519:7) {
        errno: -110,
        code: 'ETIMEDOUT',
        syscall: 'connect',
        address: '104.21.29.133',
        port: 443
      },
      Error: connect ENETUNREACH 2606:4700:3030::6815:1d85:443 - Local (:::0)
          at internalConnectMultiple (node:net:1182:16)
          at Timeout.internalConnectMultipleTimeout (node:net:1712:5)
          at listOnTimeout (node:internal/timers:583:11)
          at process.processTimers (node:internal/timers:519:7) {
        errno: -101,
        code: 'ENETUNREACH',
        syscall: 'connect',
        address: '2606:4700:3030::6815:1d85',
        port: 443
      }
    ]
  }
}

Node.js v20.16.0

Unsure if it helps, as I'm new to repo and haven't gone through it much.

Basically requests are getting timeout, which is similar to another issue made previously, where its causes a faliure when object size is large.

Therefore I believe, if the file size is big, or numer of operations, then it causes the fetch to exit with error of timeout.

Possible solution, have flag while running the cli to increase timeout.

Also can you check one thing one thing, does it repeat the same error if schema size is small?

Issue: #138

schema is big for sure in my case. timeout is the cause here.

nezaj commented

Thanks for flagging this! We increased the timeout in #345 and this should now be available in version 0.14.5 and above!