Skip to content
This repository has been archived by the owner on Oct 3, 2024. It is now read-only.

Commit

Permalink
Use CREATE OR REPLACE in sql scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
automainint committed Jul 16, 2024
1 parent 0f60fe3 commit 83c40d5
Show file tree
Hide file tree
Showing 5 changed files with 28 additions and 32 deletions.
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "pgmer2"
version = "0.3.10"
version = "0.3.11"
edition = "2021"

[lib]
Expand Down
5 changes: 3 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@ ENV RUSTFLAGS="-Ctarget-feature=-crt-static"
RUN cargo install --locked --version 0.11.4 cargo-pgrx
RUN cargo pgrx init --pg16 pg_config
RUN cargo pgrx package
RUN ls -la target/release/pgmer2-pg16/usr/share/postgresql16/extension
RUN sh generate_scripts.sh target/release/pgmer2-pg16/usr/share/postgresql16/extension
RUN ls -la extension

FROM postgres:16-alpine
ENV MERITRANK_SERVICE_URL=tcp://127.0.0.1:10234
ENV MERITRANK_RECV_TIMEOUT_MSEC=10000

COPY --from=compile /usr/project/target/release/pgmer2-pg16/usr/lib/postgresql16/pgmer2.so /usr/local/lib/postgresql/pgmer2.so
COPY --from=compile /usr/project/target/release/pgmer2-pg16/usr/share/postgresql16/extension /usr/local/share/postgresql/extension
COPY --from=compile extension /usr/local/share/postgresql/extension
COPY 20_pgmer2.sh /docker-entrypoint-initdb.d/20_pgmer2.sh
20 changes: 20 additions & 0 deletions generate_scripts.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FOLDER=$1
if [ ! -d "$FOLDER" ]; then
echo "Invalid arguments"
exit 1
fi

VER=$( cargo read-manifest | jq -r '.version' )

VER0=$( echo $VER | awk -F. -v OFS=. '{$NF -= 1; print}' )
VER1=$( echo $VER | awk -F. -v OFS=. '{$NF -= 2; print}' )
VER2=$( echo $VER | awk -F. -v OFS=. '{$NF -= 3; print}' )
VER2=$( echo $VER | awk -F. -v OFS=. '{$NF -= 4; print}' )

[ -d extension ] || mkdir extension
sed 's/CREATE FUNCTION/CREATE OR REPLACE FUNCTION/g' "$FOLDER/pgmer2--$VER.sql" > "extension/pgmer2--$VER.sql"
cp extension/pgmer2--$VER.sql extension/pgmer2--$VER3--$VER.sql
cp extension/pgmer2--$VER.sql extension/pgmer2--$VER2--$VER.sql
cp extension/pgmer2--$VER.sql extension/pgmer2--$VER1--$VER.sql
cp extension/pgmer2--$VER.sql extension/pgmer2--$VER0--$VER.sql
cp "$FOLDER/pgmer2.control" extension/
1 change: 0 additions & 1 deletion sql/pgmer2--0.3.9--0.3.10.sql

This file was deleted.

32 changes: 4 additions & 28 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,50 +39,26 @@ const VERSION : &str = match option_env!("CARGO_PKG_VERSION") {
// ================================================================

extension_sql!(r#"
-- deprecated
DROP FUNCTION IF EXISTS mr_for_beacons_global;
DROP FUNCTION IF EXISTS mr_score_linear_sum;
DROP FUNCTION IF EXISTS mr_nodes;
DROP FUNCTION IF EXISTS mr_users_stats;
DROP VIEW IF EXISTS mr_t_node;
DROP VIEW IF EXISTS mr_t_stats;
DROP FUNCTION IF EXISTS mr_service_url;
DROP FUNCTION IF EXISTS mr_connector;
DROP FUNCTION IF EXISTS mr_service_wrapped;
DROP FUNCTION IF EXISTS mr_service;
DROP FUNCTION IF EXISTS mr_node_score_superposition;
DROP FUNCTION IF EXISTS mr_node_score;
DROP FUNCTION IF EXISTS mr_node_score_linear_sum;
DROP FUNCTION IF EXISTS mr_scores_superposition;
DROP FUNCTION IF EXISTS mr_scores;
DROP FUNCTION IF EXISTS mr_scores_linear_sum;
DROP FUNCTION IF EXISTS mr_graph;
DROP FUNCTION IF EXISTS mr_nodelist;
DROP FUNCTION IF EXISTS mr_edgelist;
DROP FUNCTION IF EXISTS mr_connected;
DROP FUNCTION IF EXISTS mr_mutual_scores;
DROP FUNCTION IF EXISTS mr_put_edge;
DROP FUNCTION IF EXISTS mr_delete_edge;
DROP FUNCTION IF EXISTS mr_delete_node;
DROP FUNCTION IF EXISTS mr_reset;
DROP FUNCTION IF EXISTS mr_zerorec;
DROP VIEW IF EXISTS mr_t_edge;
DROP VIEW IF EXISTS mr_t_link;
DROP VIEW IF EXISTS mr_t_mutual_score;
CREATE VIEW mr_t_edge AS SELECT
CREATE OR REPLACE VIEW mr_t_edge AS SELECT
'' ::text AS src,
'' ::text AS dst,
(0)::double precision AS score
WHERE false;
CREATE VIEW mr_t_link AS SELECT
CREATE OR REPLACE VIEW mr_t_link AS SELECT
''::text AS src,
''::text AS dst
WHERE false;
CREATE VIEW mr_t_mutual_score AS SELECT
CREATE OR REPLACE VIEW mr_t_mutual_score AS SELECT
'' ::text AS src,
'' ::text AS dst,
(0)::double precision AS dst_score,
Expand Down

0 comments on commit 83c40d5

Please sign in to comment.