diff --git a/src/adapter/postgres.ts b/src/adapter/postgres.ts
index 7e133dd8393bb3ad24958fec79a09fd5328e1d29..c7353aa27f698e2129a212ea131eabaceb87e31b 100644
--- a/src/adapter/postgres.ts
+++ b/src/adapter/postgres.ts
@@ -46,8 +46,8 @@ export class PostgresAdapter extends Adapter {
         this.pool.connect((err, client, done) => {
             if (err) {
                 cb (err);
+                return;
             }
-
             client.query(query, [], (error, result) => {
                 // call 'done()' to release client back to pool
                 done();
diff --git a/src/api/controllers/data.ts b/src/api/controllers/data.ts
index 29fbafede51f8bae12e5acc2944f5779303d3220..285fc91e28e17cf6e50648c27a85bceccdef0f8a 100644
--- a/src/api/controllers/data.ts
+++ b/src/api/controllers/data.ts
@@ -24,8 +24,8 @@ import { Query } from "../../common/query";
 
 export class DataCtrl {
     public static read(req: Request, res: express.Response, next: express.NextFunction) {
-        let metrics = req.query.metrics.split(",");
-        let dimensions = req.query.dimensions.split(",");
+        let metrics = req.query.metrics.split(",").filter((item: string) => item !== "");
+        let dimensions = req.query.dimensions.split(",").filter((item: string) => item !== "");
         let view;
 
         try {
@@ -34,7 +34,7 @@ export class DataCtrl {
                 query.metrics.push(req.engine.getMetricByName(metrics[i]));
             }
 
-            for (let i = 0; i < metrics.length; ++i) {
+            for (let i = 0; i < dimensions.length; ++i) {
                 query.dimensions.push(req.engine.getDimensionByName(dimensions[i]));
             }
             view = req.engine.query(query);