Diesel: OSX ๋ฐ PostgreSQL์˜ DLL ์˜ค๋ฅ˜

์— ๋งŒ๋“  2016๋…„ 05์›” 18์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: diesel-rs/diesel

postgresql์„ ์‹คํ–‰ํ•˜๋Š” OSX 10.11.4 ๋…ธํŠธ๋ถ์—์„œ ๋””์ ค ๋ฐ๋ชจ๋ฅผ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ๊ฒƒ์ด ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๊นŒ์ง€ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

$ diesel migration run
thread '<main>' panicked at 'Error creating timestamp helper functions for Pg: DatabaseError("ERROR:  could not load library \"/usr/local/lib/postgresql/plpgsql.so\": dlopen(/usr/local/lib/postgresql/plpgsql.so, 10): Symbol not found: _DatumIsReadWriteExpandedObject\n  Referenced from: /usr/local/lib/postgresql/plpgsql.so\n  Expected in: /usr/local/opt/postgresql/bin/postgres\n in /usr/local/lib/postgresql/plpgsql.so\n")', ../src/libcore/result.rs:785
note: Run with `RUST_BACKTRACE=1` for a backtrace.
$ otool -l `which diesel` | grep libpq
 name /usr/local/opt/postgresql/lib/libpq.5.dylib (offset 24)

๋ณด์‹œ๋‹ค์‹œํ”ผ ๋””์ ค์€ libpq.5.dylib์— ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์ง€๋งŒ plpgsql.so๋ฅผ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(๋ฆฌ๋ˆ…์Šค์—์„œ๋Š” ์˜๋ฏธ๊ฐ€ ์žˆ์ง€๋งŒ osx์—์„œ๋Š” ์˜๋ฏธ๊ฐ€ ์—†์Œ). ๊ฒฝ๋กœ๊ฐ€ Linux ์„ค์น˜๋ฅผ ์œ„ํ•ด ํ•˜๋“œ์ฝ”๋”ฉ๋˜์–ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ฏธ๋ž˜์— ์ด ๋ฌธ์ œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ๊ฒฝ์šฐ ์ด๋Š” postgres 9.5๋ฅผ ์„ค์น˜ํ–ˆ์ง€๋งŒ 9.4์˜ ๋ฐ์ดํ„ฐ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๊ฐ€๋ฆฌ์ผฐ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค(์•„์ง pg_upgrade ์‹คํ–‰ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ผ ์ˆ˜ ์žˆ์Œ)

๋ชจ๋“  3 ๋Œ“๊ธ€

๋‚ด ์ชฝ์—์„œ ์„ค์ •์ด ์ž˜๋ชป๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜์— ์ด ๋ฌธ์ œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ๊ฒฝ์šฐ ์ด๋Š” postgres 9.5๋ฅผ ์„ค์น˜ํ–ˆ์ง€๋งŒ 9.4์˜ ๋ฐ์ดํ„ฐ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๊ฐ€๋ฆฌ์ผฐ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค(์•„์ง pg_upgrade ์‹คํ–‰ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ผ ์ˆ˜ ์žˆ์Œ)

@sgrif postgres๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฐ์ดํ„ฐ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์ด ๊ฐ™์€ ๊ฒƒ์ด ํšจ๊ณผ๊ฐ€ ์žˆ์„๊นŒ์š”?

// check installed version
$ postgres --version
postgres (PostgreSQL) 10.4

// check directory version
$ psql development_env
# select version();
                                                   version                                                    
--------------------------------------------------------------------------------------------------------------
 PostgreSQL 9.5.3 on x86_64-apple-darwin14.5.0, compiled by Apple LLVM version 7.0.2 (clang-700.1.81), 64-bit
(1 row)
์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰