Category: SAP Fixes

  • Fixing “Option parameter is not supported… server version unknown” while deploying HANA DB (CSV) in SAP BAS

    If you’re deploying a HANA DB module (HDI container) from SAP Business Application Studio (BAS) and your deploy fails with:

    Error: Option parameter is not supported by the server; based on detected server version unknown

    This usually means your deploy tool can’t “talk” to the HANA server properly, so it can’t detect the server version and then refuses to use certain deploy options.

    The good news: the fix is simple.


    What’s actually happening (in easy words)

    Your DB deploy is done by a tool called @sap/hdi-deploy.

    To connect to HANA and detect server features, @sap/hdi-deploy needs a database driver:

    • @sap/hana-client (official client) OR

    • hdb (Node.js driver)

    If no driver is installed, the deployer can’t detect your HANA/HDI version, so it prints:

    • server.version = "unknown"

    • container-api-version = -1

    • hdi-version = -1

    And then when your deploy includes an “option/parameter”, it fails with the message you saw.


    Step 1: How to confirm the issue (get server.version = "unknown")

    In BAS terminal, go to your db module folder and run:

    cd db
    node node_modules/@sap/hdi-deploy/deploy.js –info all

    If the issue exists, you’ll see something like:

    • server.version: “unknown”

    • container-api-version: “-1”

    • hdi-version: “-1”

    That is the clear sign: deployer cannot connect and detect server capabilities.


    Step 2: Fix it by installing a DB driver (recommended solutions)

    Option A (Recommended): Install @sap/hana-client

    This is the standard/default driver many setups use.

    cd db
    npm i –save @sap/hana-client
    npm i

    Now verify again:

    node node_modules/@sap/hdi-deploy/deploy.js –info all

    ✅ After this, the server section should show a real version (not “unknown”).


    Option B (Safe fallback): Install hdb and force deployer to use it

    If you prefer the pure Node.js driver (or if your setup works better with it):

    cd db
    npm i –save hdb
    npm i

    Then run:

    node node_modules/@sap/hdi-deploy/deploy.js –use-hdb –info all

    ✅ Now you should see a real server version and HDI versions.


    Step 3: Clean reinstall (helps if BAS has messy node_modules)

    If you installed the driver but still see “unknown”, do a clean reinstall:

    cd db
    rm -rf node_modules package-lock.json
    npm install

    Then rerun:

    node node_modules/@sap/hdi-deploy/deploy.js –info all

    Step 4: Deploy again

    After the driver install + server version is visible, redeploy your project (MTA deploy / CF deploy / BAS deploy flow).

    At this point, the error usually disappears immediately.


    Extra Fix (Workaround): Remove --parameter from deploy command if present

    Sometimes your deploy task/script contains something like --parameter ....

    If the deployer can’t confirm server support, it blocks.

    So if you see something like this in scripts or BAS tasks:

    • --parameter xyz=...

    Try removing it and redeploy.

    (But the real fix is still installing the driver, because “server unknown” is the main problem.)


    Extra Check: Make sure BAS is actually bound to the HDI container

    Your VCAP_SERVICES should show something like:

    • plan: "hdi-shared"

    • with schema, user, hdi_user

    If that’s missing, the deployer may not have credentials to connect.


    Quick checklist (copy-paste section)

    ✅ Run:

    cd db
    node node_modules/@sap/hdi-deploy/deploy.js –info all

    If you see server.version = unknown then:

    ✅ Install a driver:

    Option A

    npm i –save @sap/hana-client

    Option B

    npm i –save hdb

    ✅ Clean reinstall if needed:

    rm -rf node_modules package-lock.json
    npm install

    ✅ Verify again:

    node node_modules/@sap/hdi-deploy/deploy.js –info all

    ✅ Deploy again.