{"record":{"id":"ad0fa950c939c586","repo":"cube-js/cube","slug":"the-keybydatasource-cubejs-db-duckdb-s3-use-cre","errorCode":null,"errorMessage":"The ${keyByDataSource('CUBEJS_DB_DUCKDB_S3_USE_CREDENTIAL_CHAIN', dataSource, preAggregations)} must be either 'true' or 'false'.","messagePattern":"The (.+?) must be either 'true' or 'false'\\.","errorType":"validation","errorClass":"TypeError","httpStatus":null,"severity":"error","filePath":"packages/cubejs-backend-shared/src/env.ts","lineNumber":1796,"sourceCode":"    if (extensions) {\n      return extensions.split(',').map(e => e.trim());\n    }\n    return [];\n  },\n\n  duckdbS3UseCredentialChain: ({\n    dataSource,\n    preAggregations,\n  }: DataSourceOpts) => {\n    const val = get(keyByDataSource('CUBEJS_DB_DUCKDB_S3_USE_CREDENTIAL_CHAIN', dataSource, preAggregations)).asString();\n\n    if (val) {\n      if (val.toLocaleLowerCase() === 'true') {\n        return true;\n      } else if (val.toLowerCase() === 'false') {\n        return false;\n      } else {\n        throw new TypeError(\n          `The ${\n            keyByDataSource(\n              'CUBEJS_DB_DUCKDB_S3_USE_CREDENTIAL_CHAIN',\n              dataSource,\n            )\n          } must be either 'true' or 'false'.`\n        );\n      }\n    } else {\n      return false;\n    }\n  },\n\n  /** ***************************************************************\n   * Presto/Trino Driver                                                  *\n   **************************************************************** */\n\n  /**","sourceCodeStart":1778,"sourceCodeEnd":1814,"githubUrl":"https://github.com/cube-js/cube/blob/7d981676b36392fec34088b9afab6bdcad40207c/packages/cubejs-backend-shared/src/env.ts#L1778-L1814","documentation":"Env type validation in env.ts duckdbS3UseCredentialChain: CUBEJS_DB_DUCKDB_S3_USE_CREDENTIAL_CHAIN is set but is not the string 'true' or 'false' (case-insensitive). The strict boolean parse throws a TypeError when DuckDB S3 credential-chain options are resolved.","triggerScenarios":"Thrown at packages/cubejs-backend-shared/src/env.ts:1796 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set the variable to exactly 'true' or 'false'.","Remove it to use the default credential behavior.","Watch for typos and surrounding quotes/whitespace in the env configuration."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7d981676b36392fec34088b9afab6bdcad40207c","analyzedAt":"2026-09-02T03:45:10.400Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T15:18:49.778Z"}