Skip to content

Commit b315cfb

Browse files
authored
upgrade pg-client (#174)
1 parent 44aade3 commit b315cfb

File tree

4 files changed

+63
-67
lines changed

4 files changed

+63
-67
lines changed

packages/server/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,19 +39,19 @@
3939
],
4040
"dependencies": {
4141
"@google-cloud/bigquery": "^5.9.0",
42-
"@joe-re/sql-parser": "^1.3.1",
43-
"@types/pg": "^7.4.10",
42+
"@joe-re/sql-parser": "^1.3.0",
43+
"@types/pg": "^8.6.6",
4444
"@types/yargs": "^17.0.8",
4545
"cardinal": "^2.1.1",
4646
"jest": "^26.0.1",
4747
"log4js": "^6.2.1",
4848
"mysql2": "^2.3.0",
4949
"node-ssh-forward": "^0.6.3",
50-
"pg": "^7.4.3",
51-
"sqlint": "^1.3.1",
50+
"pg": "^8.9.0",
51+
"sqlint": "^1.3.0",
5252
"sqlite3": "^5.0.3",
5353
"vscode-languageclient": "^6.1.3",
54-
"vscode-languageserver": "^8.1.0",
54+
"vscode-languageserver": "8.0.0-next.8",
5555
"vscode-languageserver-protocol": "^3.15.3",
5656
"vscode-languageserver-textdocument": "^1.0.1",
5757
"yargs": "^17.3.1"

packages/server/src/createServer.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,7 @@ export function createServerWithConnection(
160160
SettingStore.getInstance().getSetting()
161161
)
162162
schema = await client.getSchema()
163-
logger.debug('get schema')
164-
logger.debug(JSON.stringify(schema))
163+
logger.debug('get schema', JSON.stringify(schema))
165164
} catch (e) {
166165
logger.error('failed to get schema info')
167166
if (e instanceof RequireSqlite3Error) {

packages/server/src/database_libs/PostgresClient.ts

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
import PG from 'pg'
2+
import log4js from 'log4js'
23
import { Connection } from '../SettingStore'
34
import AbstractClient, { RawField } from './AbstractClient'
45

6+
const logger = log4js.getLogger()
7+
58
export default class PosgresClient extends AbstractClient {
69
connection: PG.Client | null = null
710

@@ -19,17 +22,27 @@ export default class PosgresClient extends AbstractClient {
1922
return 'postgres'
2023
}
2124

22-
connect() {
25+
connect(): Promise<boolean> {
2326
const client: PG.Client = new PG.Client({
2427
user: this.settings.user || '',
2528
host: this.settings.host || '',
2629
database: this.settings.database || '',
2730
password: this.settings.password || '',
2831
port: this.settings.port || 5432,
2932
})
30-
client.connect()
31-
this.connection = client
32-
return true
33+
return new Promise((resolve, reject) => {
34+
client.connect((err) => {
35+
if (err) {
36+
logger.debug('Failed to connect to postgresql server')
37+
logger.error(err)
38+
reject(err)
39+
return
40+
}
41+
this.connection = client
42+
logger.debug('Success to connect to postgresql server')
43+
resolve(true)
44+
})
45+
})
3346
}
3447

3548
disconnect() {
@@ -39,7 +52,7 @@ export default class PosgresClient extends AbstractClient {
3952
this.connection = null
4053
}
4154

42-
getTables(): Promise<string[]> {
55+
async getTables(): Promise<string[]> {
4356
const sql = `
4457
SELECT c.relname as table_name FROM pg_class c LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
4558
WHERE n.nspname = 'public'

yarn.lock

Lines changed: 39 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1351,13 +1351,13 @@
13511351
resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
13521352
integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
13531353

1354-
"@types/pg@^7.4.10":
1355-
version "7.14.11"
1356-
resolved "https://registry.yarnpkg.com/@types/pg/-/pg-7.14.11.tgz#daf5555504a1f7af4263df265d91f140fece52e3"
1357-
integrity sha512-EnZkZ1OMw9DvNfQkn2MTJrwKmhJYDEs5ujWrPfvseWNoI95N8B4HzU/Ltrq5ZfYxDX/Zg8mTzwr6UAyTjjFvXA==
1354+
"@types/pg@^8.6.6":
1355+
version "8.6.6"
1356+
resolved "https://registry.yarnpkg.com/@types/pg/-/pg-8.6.6.tgz#21cdf873a3e345a6e78f394677e3b3b1b543cb80"
1357+
integrity sha512-O2xNmXebtwVekJDD+02udOncjVcMZQuTEQEMpKJ0ZRf5E7/9JJX3izhKUcUifBkyKpljyUM6BTgy2trmviKlpw==
13581358
dependencies:
13591359
"@types/node" "*"
1360-
pg-protocol "^1.2.0"
1360+
pg-protocol "*"
13611361
pg-types "^2.2.0"
13621362

13631363
"@types/prettier@^2.0.0":
@@ -7477,11 +7477,6 @@ pegjs@=0.10.0:
74777477
resolved "https://registry.yarnpkg.com/pegjs/-/pegjs-0.10.0.tgz#cf8bafae6eddff4b5a7efb185269eaaf4610ddbd"
74787478
integrity sha1-z4uvrm7d/0tafvsYUmnqr0YQ3b0=
74797479

7480-
7481-
version "0.1.3"
7482-
resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-0.1.3.tgz#da1847b20940e42ee1492beaf65d49d91b245df7"
7483-
integrity sha1-2hhHsglA5C7hSSvq9l1J2RskXfc=
7484-
74857480
pg-connection-string@^2.5.0:
74867481
version "2.5.0"
74877482
resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.5.0.tgz#538cadd0f7e603fc09a12590f3b8a452c2c0cf34"
@@ -7492,20 +7487,15 @@ [email protected]:
74927487
resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c"
74937488
integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==
74947489

7495-
pg-packet-stream@^1.1.0:
7496-
version "1.1.0"
7497-
resolved "https://registry.yarnpkg.com/pg-packet-stream/-/pg-packet-stream-1.1.0.tgz#e45c3ae678b901a2873af1e17b92d787962ef914"
7498-
integrity sha512-kRBH0tDIW/8lfnnOyTwKD23ygJ/kexQVXZs7gEyBljw4FYqimZFxnMMx50ndZ8In77QgfGuItS5LLclC2TtjYg==
7499-
7500-
pg-pool@^2.0.10:
7501-
version "2.0.10"
7502-
resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-2.0.10.tgz#842ee23b04e86824ce9d786430f8365082d81c4a"
7503-
integrity sha512-qdwzY92bHf3nwzIUcj+zJ0Qo5lpG/YxchahxIN8+ZVmXqkahKXsnl2aiJPHLYN9o5mB/leG+Xh6XKxtP7e0sjg==
7490+
pg-pool@^3.6.0:
7491+
version "3.6.0"
7492+
resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.6.0.tgz#3190df3e4747a0d23e5e9e8045bcd99bda0a712e"
7493+
integrity sha512-clFRf2ksqd+F497kWFyM21tMjeikn60oGDmqMT8UBrynEwVEX/5R5xd2sdvdo1cZCFlguORNpVuqxIj+aK4cfQ==
75047494

7505-
pg-protocol@^1.2.0:
7506-
version "1.5.0"
7507-
resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.5.0.tgz#b5dd452257314565e2d54ab3c132adc46565a6a0"
7508-
integrity sha512-muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ==
7495+
pg-protocol@*, pg-protocol@^1.6.0:
7496+
version "1.6.0"
7497+
resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.6.0.tgz#4c91613c0315349363af2084608db843502f8833"
7498+
integrity sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q==
75097499

75107500
pg-types@^2.1.0, pg-types@^2.2.0:
75117501
version "2.2.0"
@@ -7518,19 +7508,18 @@ pg-types@^2.1.0, pg-types@^2.2.0:
75187508
postgres-date "~1.0.4"
75197509
postgres-interval "^1.1.0"
75207510

7521-
pg@^7.4.3:
7522-
version "7.18.2"
7523-
resolved "https://registry.yarnpkg.com/pg/-/pg-7.18.2.tgz#4e219f05a00aff4db6aab1ba02f28ffa4513b0bb"
7524-
integrity sha512-Mvt0dGYMwvEADNKy5PMQGlzPudKcKKzJds/VbOeZJpb6f/pI3mmoXX0JksPgI3l3JPP/2Apq7F36O63J7mgveA==
7511+
pg@^8.9.0:
7512+
version "8.10.0"
7513+
resolved "https://registry.yarnpkg.com/pg/-/pg-8.10.0.tgz#5b8379c9b4a36451d110fc8cd98fc325fe62ad24"
7514+
integrity sha512-ke7o7qSTMb47iwzOSaZMfeR7xToFdkE71ifIipOAAaLIM0DYzfOAXlgFFmYUIE2BcJtvnVlGCID84ZzCegE8CQ==
75257515
dependencies:
75267516
buffer-writer "2.0.0"
75277517
packet-reader "1.0.0"
7528-
pg-connection-string "0.1.3"
7529-
pg-packet-stream "^1.1.0"
7530-
pg-pool "^2.0.10"
7518+
pg-connection-string "^2.5.0"
7519+
pg-pool "^3.6.0"
7520+
pg-protocol "^1.6.0"
75317521
pg-types "^2.1.0"
75327522
pgpass "1.x"
7533-
semver "4.3.2"
75347523

75357524
75367525
version "1.0.4"
@@ -8260,11 +8249,6 @@ schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1:
82608249
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
82618250
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
82628251

8263-
8264-
version "4.3.2"
8265-
resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.2.tgz#c7a07158a80bedd052355b770d82d6640f803be7"
8266-
integrity sha1-x6BxWKgL7dBSNVt3DYLWZA+AO+c=
8267-
82688252
82698253
version "7.3.4"
82708254
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97"
@@ -9549,10 +9533,10 @@ [email protected], vscode-jsonrpc@^6.0.0:
95499533
resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz#108bdb09b4400705176b957ceca9e0880e9b6d4e"
95509534
integrity sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==
95519535

9552-
vscode-jsonrpc@8.1.0:
9553-
version "8.1.0"
9554-
resolved "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.1.0.tgz#cb9989c65e219e18533cc38e767611272d274c94"
9555-
integrity sha512-6TDy/abTQk+zDGYazgbIPc+4JoXdwC8NHU9Pbn4UJP1fehUyZmM4RHp5IthX7A6L5KS30PRui+j+tbbMMMafdw==
9536+
vscode-jsonrpc@8.0.0-next.6:
9537+
version "8.0.0-next.6"
9538+
resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-8.0.0-next.6.tgz#981f7c065ecc7e7e8595f9da6d073ac592b34114"
9539+
integrity sha512-6Ld3RYjygn5Ih7CkAtcAwiDQC+rakj2O+PnASfNyYv3sLmm44eJpEKzuPUN30Iy2UB09AZg8T6LBKWTJTEJDVw==
95569540

95579541
vscode-jsonrpc@^5.0.0, vscode-jsonrpc@^5.0.1:
95589542
version "5.0.1"
@@ -9592,13 +9576,13 @@ [email protected], vscode-languageserver-protocol@^3.15.3:
95929576
vscode-jsonrpc "6.0.0"
95939577
vscode-languageserver-types "3.16.0"
95949578

9595-
9596-
version "3.17.3"
9597-
resolved "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.3.tgz#6d0d54da093f0c0ee3060b81612cce0f11060d57"
9598-
integrity sha512-924/h0AqsMtA5yK22GgMtCYiMdCOtWTSGgUOkgEDX+wk2b0x4sAfLiO4NxBxqbiVtz7K7/1/RgVrVI0NClZwqA==
9579+
9580+
version "3.17.0-next.14"
9581+
resolved "https://registry.yarnpkg.com/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.14.tgz#d3500bef2ad2889385cda4802acfe6549842164d"
9582+
integrity sha512-iangobY8dL6sFZkOx4OhRPJM9gN0I1caUsOVR+MnPozsqQUtwMXmbIcfaIf0Akp0pd3KhJDPf/tdwRX68QGeeA==
95999583
dependencies:
9600-
vscode-jsonrpc "8.1.0"
9601-
vscode-languageserver-types "3.17.3"
9584+
vscode-jsonrpc "8.0.0-next.6"
9585+
vscode-languageserver-types "3.17.0-next.7"
96029586

96039587
vscode-languageserver-textdocument@^1.0.1:
96049588
version "1.0.1"
@@ -9615,17 +9599,17 @@ [email protected]:
96159599
resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz#ecf393fc121ec6974b2da3efb3155644c514e247"
96169600
integrity sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==
96179601

9618-
9619-
version "3.17.3"
9620-
resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.3.tgz#72d05e47b73be93acb84d6e311b5786390f13f64"
9621-
integrity sha512-SYU4z1dL0PyIMd4Vj8YOqFvHu7Hz/enbWtpfnVbJHU4Nd1YNYx8u0ennumc6h48GQNeOLxmwySmnADouT/AuZA==
9602+
9603+
version "3.17.0-next.7"
9604+
resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.17.0-next.7.tgz#3e41ebb290c95bb38595f568a9963212626290cc"
9605+
integrity sha512-KH4zdG1qBXxoso61ChgpeoZYyHGJo8bV7Jv4I+fwQ1Ryy59JAxoZ9GAbhR5TeeafHctLcg6RFvY3m8Jqfu17cg==
96229606

9623-
vscode-languageserver@^8.1.0:
9624-
version "8.1.0"
9625-
resolved "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-8.1.0.tgz#5024253718915d84576ce6662dd46a791498d827"
9626-
integrity sha512-eUt8f1z2N2IEUDBsKaNapkz7jl5QpskN2Y0G01T/ItMxBxw1fJwvtySGB9QMecatne8jFIWJGWI61dWjyTLQsw==
9607+
vscode-languageserver@8.0.0-next.8:
9608+
version "8.0.0-next.8"
9609+
resolved "https://registry.yarnpkg.com/vscode-languageserver/-/vscode-languageserver-8.0.0-next.8.tgz#86ef42fb296ab338b800e83e478d0f687805c170"
9610+
integrity sha512-Gq0uqKbOgw7YNwPxMoNCeh7mHKMhG5j6EuoSh+w5pnKd7Eu9a74cagqf9aZDVFWW6GRpqR/Z+1o6EXqDK+g2Tg==
96279611
dependencies:
9628-
vscode-languageserver-protocol "3.17.3"
9612+
vscode-languageserver-protocol "3.17.0-next.14"
96299613

96309614
vscode-test@^1.3.0:
96319615
version "1.6.1"

0 commit comments

Comments
 (0)