# Balena env rm: Database error

**URL:** <https://forums.balena.io/t/balena-env-rm-database-error/22660>\
**Category:** openBalena\
**Tags:** balena-cli\
**Created:** [July 30, 2019, 5:05pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660 "2019-07-30T17:05:22Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [July 30, 2019, 5:05pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/1 "2019-07-30T17:05:22Z")

</div>

Original Github issue: [https://github.com/balena-io/open-balena/issues/61](https://github.com/balena-io/open-balena/issues/61)

As of right now, deleting environment variables on openBalena is not possible due to a `BalenaRequestError: Request error: Database error`. This happens on device and application variables.

```auto
$ balena -v
11.7.3

$ balena env add BALENA_SUPERVISOR_LOCAL_MODE 1 --device 0a160ca

$ balena envs --device 0a160ca --config
ID NAME VALUE
1 BALENA_SUPERVISOR_LOCAL_MODE 1

$ balena env rm BALENA_SUPERVISOR_LOCAL_MODE --device 0a160ca
? Are you sure you want to delete the environment variable? Yes
BalenaRequestError: Request error: Database error
    at C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\balena-request\build\request.js:197:17
    at tryCatcher (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:517:31)
    at Promise._settlePromise (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:574:18)
    at Promise._settlePromise0 (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:619:10)
    at Promise._settlePromises (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:699:18)
    at _drainQueueStep (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:138:12)
    at _drainQueue (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:131:9)
    at Async._drainQueues (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:147:5)
    at Immediate.Async.drainQueues [as _onImmediate] (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:17:14)
    at processImmediate (internal/timers.js:439:21)
    at process.topLevelDomainCallback (domain.js:126:23)

If you need help, don't hesitate in contacting our support forums at
https://forums.balena.io

For bug reports or feature requests, have a look at the GitHub issues or
create a new one at: https://github.com/balena-io/balena-cli/issues/

(node:17136) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated

```

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [August 6, 2019, 3:01pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/6 "2019-08-06T15:01:27Z")

</div>

@dfunckt Any idea what might be causing this? I am still getting this error, even after upgrading `balena-cli` to `11.7.5`:

```auto
$ balena env add TEST_ENV 1 --device 59525b1

$ balena envs --device 59525b1
ID NAME VALUE
6 TEST_ENV 1

$ balena env rm TEST_ENV --device 59525b1
? Are you sure you want to delete the environment variable? Yes
BalenaRequestError: Request error: Database error

Additional information may be available by setting a DEBUG=1 environment
variable: "set DEBUG=1" on a Windows command prompt, or "export DEBUG=1"
on Linux or macOS.

If you need help, dont hesitate in contacting our support forums at
https://forums.balena.io

For bug reports or feature requests, have a look at the GitHub issues or
create a new one at: https://github.com/balena-io/balena-cli/issues/

(node:9884) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated

$ balena envs --device 59525b1
ID NAME VALUE
6 TEST_ENV 1

```

---

<div class="post-metadata">

**Author:** ![lucianbuzzo](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/lucianbuzzo/32/615_2.png) [@lucianbuzzo](https://forums.balena.io/u/lucianbuzzo)\
**Post date:** [August 6, 2019, 3:18pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/7 "2019-08-06T15:18:07Z")

</div>

Hi, is the device in local mode? Also, could you post the output of `DEBUG=1 balena env rm TEST_ENV --device 59525b1` ?

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [August 6, 2019, 3:20pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/8 "2019-08-06T15:20:25Z")

</div>

> [@lucianbuzzo](#):
>
> Hi, is the device in local mode?

This one is not. Since my original post I have made a new openBalena install and haven’t set any device to local mode.

> [@lucianbuzzo](#):
>
> Also, could you post the output of `DEBUG=1 balena env rm TEST_ENV --device 59525b1` ?

```auto
$ DEBUG=1 balena env rm TEST_ENV --device 59525b1 
Debug: original argv0="C:\Program Files\nodejs\node.exe" argv=[C:\Program Files\nodejs\node.exe,C:\Program Files\nodejs\node_modules\balena-cli\bin\balena,env,rm,TEST_ENV,--device,59525b1] length=7
? Are you sure you want to delete the environment variable? Yes
BalenaRequestError: Request error: Database error
    at C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\balena-request\build\request.js:197:17
    at tryCatcher (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:517:31)
    at Promise._settlePromise (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:574:18)
    at Promise._settlePromise0 (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:619:10)
    at Promise._settlePromises (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\promise.js:699:18)
    at _drainQueueStep (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:138:12)
    at _drainQueue (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:131:9)
    at Async._drainQueues (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:147:5)
    at Immediate.Async.drainQueues [as _onImmediate] (C:\ProgramData\nvm\v12.7.0\node_modules\balena-cli\node_modules\bluebird\js\release\async.js:17:14)
    at processImmediate (internal/timers.js:439:21)
    at process.topLevelDomainCallback (domain.js:126:23)

If you need help, dont hesitate in contacting our support forums at    
https://forums.balena.io

For bug reports or feature requests, have a look at the GitHub issues or
create a new one at: https://github.com/balena-io/balena-cli/issues/    
(node:15440) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated

$

```

---

<div class="post-metadata">

**Author:** ![lucianbuzzo](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/lucianbuzzo/32/615_2.png) [@lucianbuzzo](https://forums.balena.io/u/lucianbuzzo)\
**Post date:** [August 6, 2019, 3:24pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/9 "2019-08-06T15:24:05Z")

</div>

Thanks for the information. What OS version is the device running and what device is it? I will try and replicate the bug on my local machine

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [August 6, 2019, 3:27pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/10 "2019-08-06T15:27:23Z")

</div>

I am testing using many Raspberry Pi 3B+.  
os\_version: `balenaOS 2.38.0+rev1`  
os\_variant: `dev`

I just tried with another device using the `prod` os\_variant, but I get the same error.

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [August 6, 2019, 3:34pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/11 "2019-08-06T15:34:03Z")

</div>

Got some more! I managed to go through the large amount of logs openBalena produces and found this happening when running the `balena env rm` command :

```auto
Aug 06 15:31:48 7658c5fe8305 api[1469]: Parsing DELETE /resin/application_environment_variable(%27TEST_ENV%27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: Running DELETE /resin/application_environment_variable(%27TEST_ENV%27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: SELECT "application environment variable"."id"
Aug 06 15:31:48 7658c5fe8305 api[1469]: FROM "application environment variable"
Aug 06 15:31:48 7658c5fe8305 api[1469]: WHERE "application environment variable"."id" = $1 ['TEST_ENV']
Aug 06 15:31:48 7658c5fe8305 api[1469]: Error building the application_environment_variable filter invalid input syntax for integer: "TEST_ENV" DatabaseError: invalid input syntax for integer: "TEST_ENV"
Aug 06 15:31:48 7658c5fe8305 api[1469]: at wrapDatabaseError (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:41:15)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at PostgresTx.executeSql (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:143:19)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at abstract_sql_1.getAndCheckBindValues.then.values (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:926:19)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runQuery (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:922:68)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at doRunQuery (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:647:40)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at permissions.addPermissions.then (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:649:24)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Holder$2._callFunction (<anonymous>:19:29)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at uriParser.parseOData.then.request (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:643:57)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.exports.getAffectedIds.Promise.method (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:630:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.exports.getCurrentRequestAffectedIds.args [as getCurrentRequestAffectedIds] (/usr/src/app/src/platform/index.ts:90:62)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at addEnvHooks (/usr/src/app/src/hooks/resources/envvars.ts:118:23)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Hook.preRunHook [as hookFn] (/usr/src/app/src/hooks/resources/envvars.ts:24:32)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.try (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/hooks.js:12:25)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Hook.run (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/hooks.js:11:27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.map.hook (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:344:44)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.method (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:344:20)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runRequest (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:807:12)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at tx (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:728:24)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.try (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:50)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at promise.tap.tx (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:43)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:22)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.transaction (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:182:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runTransaction (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:903:27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at uriParser.parseOData.then.then.request (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:711:30)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Holder$2._callFunction (<anonymous>:19:29)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at requestPart (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:711:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.each.p (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/control-flow.js:32:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at mapTill (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/control-flow.js:31:20)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runHooks.then (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:693:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at exports.handleODataRequest (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:684:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:137:13)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:131:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Route.dispatch (/usr/src/app/node_modules/express/lib/router/route.js:112:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at /usr/src/app/node_modules/express/lib/router/index.js:281:22
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:354:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:365:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:410:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:117:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at app.all (/usr/src/app/src/platform/versions.ts:11:9)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:137:13)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:131:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Route.dispatch (/usr/src/app/node_modules/express/lib/router/route.js:112:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at /usr/src/app/node_modules/express/lib/router/index.js:281:22
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:354:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:365:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:410:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at passport.authenticate (/usr/src/app/src/platform/jwt.ts:104:9)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at JwtStrategy.strategy.success (/usr/src/app/node_modules/passport/lib/middleware/authenticate.js:214:18)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at verified (/usr/src/app/node_modules/passport-jwt/lib/strategy.js:115:41)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runCallback (timers.js:705:18)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at tryOnImmediate (timers.js:676:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at processImmediate (timers.js:658:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at process.topLevelDomainCallback (domain.js:120:23)
Aug 06 15:31:48 7658c5fe8305 api[1469]: { DatabaseError: invalid input syntax for integer: "TEST_ENV"
Aug 06 15:31:48 7658c5fe8305 api[1469]: at wrapDatabaseError (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:41:15)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at PostgresTx.executeSql (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:143:19)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at abstract_sql_1.getAndCheckBindValues.then.values (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:926:19)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runQuery (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:922:68)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at doRunQuery (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:647:40)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at permissions.addPermissions.then (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:649:24)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Holder$2._callFunction (<anonymous>:19:29)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at uriParser.parseOData.then.request (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:643:57)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.exports.getAffectedIds.Promise.method (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:630:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.exports.getCurrentRequestAffectedIds.args [as getCurrentRequestAffectedIds] (/usr/src/app/src/platform/index.ts:90:62)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at addEnvHooks (/usr/src/app/src/hooks/resources/envvars.ts:118:23)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Hook.preRunHook [as hookFn] (/usr/src/app/src/hooks/resources/envvars.ts:24:32)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.try (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/hooks.js:12:25)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Hook.run (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/hooks.js:11:27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.map.hook (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:344:44)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.method (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:344:20)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runRequest (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:807:12)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at tx (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:728:24)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.try (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:50)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at promise.tap.tx (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:43)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:22)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.transaction (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:182:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runTransaction (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:903:27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at uriParser.parseOData.then.then.request (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:711:30)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Holder$2._callFunction (<anonymous>:19:29)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at requestPart (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:711:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.each.p (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/control-flow.js:32:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at mapTill (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/control-flow.js:31:20)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runHooks.then (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:693:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at exports.handleODataRequest (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:684:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:137:13)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:131:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Route.dispatch (/usr/src/app/node_modules/express/lib/router/route.js:112:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at /usr/src/app/node_modules/express/lib/router/index.js:281:22
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:354:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:365:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:410:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:117:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at app.all (/usr/src/app/src/platform/versions.ts:11:9)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:137:13)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:131:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Route.dispatch (/usr/src/app/node_modules/express/lib/router/route.js:112:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at /usr/src/app/node_modules/express/lib/router/index.js:281:22
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:354:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:365:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:410:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at passport.authenticate (/usr/src/app/src/platform/jwt.ts:104:9)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at JwtStrategy.strategy.success (/usr/src/app/node_modules/passport/lib/middleware/authenticate.js:214:18)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at verified (/usr/src/app/node_modules/passport-jwt/lib/strategy.js:115:41)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runCallback (timers.js:705:18)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at tryOnImmediate (timers.js:676:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at processImmediate (timers.js:658:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at process.topLevelDomainCallback (domain.js:120:23)
Aug 06 15:31:48 7658c5fe8305 api[1469]: message: 'invalid input syntax for integer: "TEST_ENV"',
Aug 06 15:31:48 7658c5fe8305 api[1469]: name: 'DatabaseError',
Aug 06 15:31:48 7658c5fe8305 api[1469]: code: '22P02' }
Aug 06 15:31:48 7658c5fe8305 api[1469]: { DatabaseError: invalid input syntax for integer: "TEST_ENV"
Aug 06 15:31:48 7658c5fe8305 api[1469]: at wrapDatabaseError (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:41:15)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at PostgresTx.executeSql (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:143:19)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at abstract_sql_1.getAndCheckBindValues.then.values (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:926:19)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runQuery (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:922:68)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at doRunQuery (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:647:40)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at permissions.addPermissions.then (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:649:24)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Holder$2._callFunction (<anonymous>:19:29)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at uriParser.parseOData.then.request (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:643:57)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.exports.getAffectedIds.Promise.method (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:630:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.exports.getCurrentRequestAffectedIds.args [as getCurrentRequestAffectedIds] (/usr/src/app/src/platform/index.ts:90:62)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at addEnvHooks (/usr/src/app/src/hooks/resources/envvars.ts:118:23)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Hook.preRunHook [as hookFn] (/usr/src/app/src/hooks/resources/envvars.ts:24:32)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.try (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/hooks.js:12:25)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Hook.run (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/hooks.js:11:27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.map.hook (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:344:44)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.method (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:344:20)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runRequest (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:807:12)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at tx (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:728:24)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.try (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:50)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at promise.tap.tx (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:43)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:191:22)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Object.transaction (/usr/src/app/node_modules/@resin/pinejs/out/database-layer/db.js:182:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runTransaction (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:903:27)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at uriParser.parseOData.then.then.request (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:711:30)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Holder$2._callFunction (<anonymous>:19:29)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at requestPart (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:711:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Promise.each.p (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/control-flow.js:32:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at mapTill (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/control-flow.js:31:20)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runHooks.then (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:693:16)
Aug 06 15:31:48 7658c5fe8305 api[1469]: From previous event:
Aug 06 15:31:48 7658c5fe8305 api[1469]: at exports.handleODataRequest (/usr/src/app/node_modules/@resin/pinejs/out/sbvr-api/sbvr-utils.js:684:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:137:13)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:131:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:131:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Route.dispatch (/usr/src/app/node_modules/express/lib/router/route.js:112:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at /usr/src/app/node_modules/express/lib/router/index.js:281:22
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:354:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:365:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:410:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:117:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at app.all (/usr/src/app/src/platform/versions.ts:11:9)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:137:13)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/route.js:131:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Route.dispatch (/usr/src/app/node_modules/express/lib/router/route.js:112:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at /usr/src/app/node_modules/express/lib/router/index.js:281:22
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:354:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at param (/usr/src/app/node_modules/express/lib/router/index.js:365:14)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:410:3)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at passport.authenticate (/usr/src/app/src/platform/jwt.ts:104:9)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at JwtStrategy.strategy.success (/usr/src/app/node_modules/passport/lib/middleware/authenticate.js:214:18)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at verified (/usr/src/app/node_modules/passport-jwt/lib/strategy.js:115:41)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at runCallback (timers.js:705:18)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at tryOnImmediate (timers.js:676:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at processImmediate (timers.js:658:5)
Aug 06 15:31:48 7658c5fe8305 api[1469]: at process.topLevelDomainCallback (domain.js:120:23)
Aug 06 15:31:48 7658c5fe8305 api[1469]: message: 'Database error',
Aug 06 15:31:48 7658c5fe8305 api[1469]: name: 'DatabaseError',
Aug 06 15:31:48 7658c5fe8305 api[1469]: code: '22P02' }

```

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [August 6, 2019, 3:40pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/12 "2019-08-06T15:40:43Z")

</div>

Oh my, I figured it out:  
I should be using the variable **id** instead of its **name** , AS STATED IN THE DOCS 🤦‍♂️

[https://www.balena.io/docs/reference/cli/#env-rm-id](https://www.balena.io/docs/reference/cli/#env-rm-id)

Still, now I don’t get an error but the variable doesn’t seem to go away 🤔

```auto
$ balena envs --device 59525b1
ID NAME VALUE
6 TEST_ENV 1

$ DEBUG=1 balena env rm 6 --device c250187 -y
Debug: original argv0="C:\Program Files\nodejs\node.exe" argv=[C:\Program Files\nodejs\node.exe,C:\Program Files\nodejs\node_modules\balena-cli\bin\balena,env,rm,6,--device,c250187,-y] length=8

$ balena envs --device 59525b1
ID NAME VALUE
6 TEST_ENV 1

```

---

<div class="post-metadata">

**Author:** ![lucianbuzzo](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/lucianbuzzo/32/615_2.png) [@lucianbuzzo](https://forums.balena.io/u/lucianbuzzo)\
**Post date:** [August 6, 2019, 4:00pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/13 "2019-08-06T16:00:25Z")

</div>

I think the issue here is that you’re passing along the device id after the `--device` command. If you remove the device id it works fine:

```auto
$(04:57 pm) ~/ balena envs --device f37237e1a23d63ee2f8dda427d8736be
ID NAME VALUE
137963 TEST 1
$(04:57 pm) ~/ balena env rm 137963 --device f37237e1a23d63ee2f8dda427d8736be -y
$(04:58 pm) ~/ balena envs --device f37237e1a23d63ee2f8dda427d8736be
ID NAME VALUE
137963 TEST 1
$(04:58 pm) ~/ balena env rm 137963 --device
? Are you sure you want to delete the environment variable? Yes
$(04:58 pm) ~/ balena envs --device f37237e1a23d63ee2f8dda427d8736be
No environment variables found

If you need help, don't hesitate in contacting us at:

  GitHub: https://github.com/balena-io/balena-cli/issues/new
  Forums: https://forums.balena.io

$(04:58 pm) ~/ 

```

---

<div class="post-metadata">

**Author:** ![lucianbuzzo](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/lucianbuzzo/32/615_2.png) [@lucianbuzzo](https://forums.balena.io/u/lucianbuzzo)\
**Post date:** [August 6, 2019, 4:04pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/14 "2019-08-06T16:04:44Z")

</div>

Its unexpected that the command would fail silently, whilst providing a false positive response, when providing the additional argument. I’ve opened a GitHub issue to track this that you can see here [https://github.com/balena-io/balena-cli/issues/1380](https://github.com/balena-io/balena-cli/issues/1380)

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [August 6, 2019, 4:05pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/15 "2019-08-06T16:05:06Z")

</div>

Oh my god that’s it!  
The naming is super confusing. `--device` everywhere across the cli is used to pass a device ID.  
I definitely get why this works this way, but maybe it should be changed a bit or better explained for clarity.  
Thanks a lot for your time!

---

<div class="post-metadata">

**Author:** ![lucianbuzzo](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/lucianbuzzo/32/615_2.png) [@lucianbuzzo](https://forums.balena.io/u/lucianbuzzo)\
**Post date:** [August 6, 2019, 4:10pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/17 "2019-08-06T16:10:32Z")

</div>

I agree with you that this is confusing behaviour - It seems that you’ve experienced several usability issues one after the other! I’ll try and take some time to look into this tomorrow and see if I can improve the situation.

---

<div class="post-metadata">

**Author:** ![lucianbuzzo](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/lucianbuzzo/32/615_2.png) [@lucianbuzzo](https://forums.balena.io/u/lucianbuzzo)\
**Post date:** [August 16, 2019, 6:58am UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/20 "2019-08-16T06:58:05Z")

</div>

Hi,  
As of v11.8.1 balena CLI contains a few improvements to the `balena env rm` command. If a string is passed instead of an integer ID then a warning message will be printed and similarly, if an extra argument is present (i.e. a device ID after the `-d` flag) a warning message will also be printed.  
Thanks for reporting this issue!

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [October 2, 2019, 5:26pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/22 "2019-10-02T17:26:26Z")

</div>

Hey there! I’m having some trouble deleting environment variables again.

```auto
$ balena envs -a myApp --config
ID NAME VALUE
15 RESIN_HOST_CONFIG_dtoverlay vc4-fkms-v3d
14 RESIN_HOST_CONFIG_gpu_mem 396

$ balena env rm -y 15

$ balena envs -a myApp --config
ID NAME VALUE
15 RESIN_HOST_CONFIG_dtoverlay vc4-fkms-v3d
14 RESIN_HOST_CONFIG_gpu_mem 396

```

Checking the db logs, I see something going on if I try to run `balena env add RESIN_HOST_CONFIG_dtoverlay vc4-fkms-v3d -a myApp` multiple times:

```auto
db_1 | 2019-10-02 17:25:21.881 UTC [62263] ERROR: duplicate key value violates unique constraint "application config variable_application_name_key"
db_1 | 2019-10-02 17:25:21.881 UTC [62263] DETAIL: Key (application, name)=(7, RESIN_HOST_CONFIG_dtoverlay) already exists.
db_1 | 2019-10-02 17:25:21.881 UTC [62263] STATEMENT: INSERT INTO "application config variable" ("application", "name", "value")db_1             
db_1 | VALUES ($1, $2, $3) RETURNING "id";

```

Can adding the same variable multiple time break something?

---

<div class="post-metadata">

**Author:** ![thgreasi](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/thgreasi/32/454_2.png) [@thgreasi](https://forums.balena.io/u/thgreasi)\
**Post date:** [October 2, 2019, 5:29pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/23 "2019-10-02T17:29:52Z")

</div>

Hi @edorgeville ,  
Can you clarify the open-balena-api & the balena-cli version that you are using?

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [October 2, 2019, 5:37pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/24 "2019-10-02T17:37:36Z")

</div>

Hey @thgreasi!

- openBalena v1.3.0
- balena-cli 11.13.1

---

<div class="post-metadata">

**Author:** ![thgreasi](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/thgreasi/32/454_2.png) [@thgreasi](https://forums.balena.io/u/thgreasi)\
**Post date:** [October 2, 2019, 6:03pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/25 "2019-10-02T18:03:24Z")

</div>

Hi,  
It seems that the CLI is lacking a way to specify that the variable that you want to delete is a configuration one,  
Thanks for bringing this up. I’ve opened an issue for this on the balena-cli repository where you can track progress.

> <https://github.com/balena-io/balena-cli/issues/1459>

In the mean time the best that you can achieve with the current CLI is to clear the value of that config variable with

```auto
balena env add RESIN_HOST_CONFIG_dtoverlay "" --application myApp

```

If you are using the balena-sdk you could achieve this with the following method:

> <https://github.com/balena-io/balena-sdk/blob/master/DOCUMENTATION.md#configvarremovenameorid-key--promise>

About the `duplicate key value violates unique constraint "application config variable_application_name_key"` error that you are seeing when trying to set the value of a pre-existing envvar, that’s expected since the CLI’s `balena env add` command tries to create a new env var or updates it if it gets a conflict error. Are you facing an issue with this, or is it just a concern about the extra error log?

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [October 2, 2019, 7:21pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/27 "2019-10-02T19:21:58Z")

</div>

> [@thgreasi](#):
>
> In the mean time the best that you can achieve with the current CLI is to clear the value of that config variable with
> 
> ```auto
> balena env add RESIN_HOST_CONFIG_dtoverlay "" --application myApp
> 
> ```

Cool. The device supervisor logs shows:

```auto
Applied boot config: {"dtoverlay":[""],"gpu_mem":"396","dtparam":["i2c_arm=on","spi=on","audio=on"],"disable_splash":"1","avoid_warnings":"1"}

```

Does it mean that `dtoverlay` won’t be added to `config.txt` or will it be equivalent to adding `dtoverlay=` (with no options) to `config.txt`?

> [@thgreasi](#):
>
> About the `duplicate key value violates unique constraint "application config variable_application_name_key"` error that you are seeing when trying to set the value of a pre-existing envvar, that’s expected since the CLI’s `balena env add` command tries to create a new env var or updates it if it gets a conflict error. Are you facing an issue with this, or is it just a concern about the extra error log?

Nope! Just wanted to give more intel in order to find what was causing the bug, turns out it’s unrelated :^)

I’ll follow the Github issue, thanks.

---

<div class="post-metadata">

**Author:** ![richbayliss](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/richbayliss/32/1054_2.png) [@richbayliss](https://forums.balena.io/u/richbayliss)\
**Post date:** [October 2, 2019, 7:45pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/28 "2019-10-02T19:45:55Z")

</div>

Hi.

> will it be equivalent to adding dtoverlay= (with no options) to config.txt?

I would think this option but I haven’t tested it. You could verify by SSHing in the the device and looking at `/mnt/boot/config.txt` to see what state it is in 👍

---

<div class="post-metadata">

**Author:** ![edorgeville](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/edorgeville/32/3993_2.png) [@edorgeville](https://forums.balena.io/u/edorgeville)\
**Post date:** [October 2, 2019, 8:15pm UTC](https://forums.balena.io/t/balena-env-rm-database-error/22660/30 "2019-10-02T20:15:16Z")

</div>

```auto
$ balena ssh 88f5854.local
root@88f5854:~# cat /mnt/boot/config.txt 
dtoverlay=
gpu_mem=396
dtparam=i2c_arm=on
dtparam=spi=on
dtparam=audio=on
disable_splash=1
avoid_warnings=1

```

😱!!!

Eh, I don’t know if it’s really an issue. Not sure if this changes the defaults or not.

[Next page](https://forums.balena.io/t/balena-env-rm-database-error/22660.md?page=2)
