From 8aefd7023de6458ca93ff8a12571eaaf960b2436 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Fri, 28 Jul 2023 11:46:34 +0100 Subject: [PATCH 1/2] Use excluded in DO UPDATE SET --- src/main/java/me/kavin/piped/utils/VideoHelpers.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/me/kavin/piped/utils/VideoHelpers.java b/src/main/java/me/kavin/piped/utils/VideoHelpers.java index 3049c1d3..7984246e 100644 --- a/src/main/java/me/kavin/piped/utils/VideoHelpers.java +++ b/src/main/java/me/kavin/piped/utils/VideoHelpers.java @@ -162,9 +162,7 @@ public static void insertVideo(Video video) { s.createNativeMutationQuery( "INSERT INTO videos (uploader_id,duration,is_short,thumbnail,title,uploaded,views,id) values " + "(:uploader_id,:duration,:is_short,:thumbnail,:title,:uploaded,:views,:id) ON CONFLICT (id) DO UPDATE SET " + - "duration = :duration," + - "title = :title," + - "views = :views" + "duration = excluded.duration, title = excluded.title, views = excluded.views" ) .setParameter("uploader_id", video.getChannel()) .setParameter("duration", video.getDuration()) From 37b2fca2fd31f0a87a5648da5de2029e59c0a004 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Fri, 28 Jul 2023 11:50:21 +0100 Subject: [PATCH 2/2] Fix type mismatch error. --- src/main/java/me/kavin/piped/utils/VideoHelpers.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/me/kavin/piped/utils/VideoHelpers.java b/src/main/java/me/kavin/piped/utils/VideoHelpers.java index 7984246e..6c808345 100644 --- a/src/main/java/me/kavin/piped/utils/VideoHelpers.java +++ b/src/main/java/me/kavin/piped/utils/VideoHelpers.java @@ -164,14 +164,15 @@ public static void insertVideo(Video video) { "(:uploader_id,:duration,:is_short,:thumbnail,:title,:uploaded,:views,:id) ON CONFLICT (id) DO UPDATE SET " + "duration = excluded.duration, title = excluded.title, views = excluded.views" ) - .setParameter("uploader_id", video.getChannel()) + .setParameter("uploader_id", video.getChannel().getUploaderId()) .setParameter("duration", video.getDuration()) .setParameter("is_short", video.isShort()) .setParameter("thumbnail", video.getThumbnail()) .setParameter("title", video.getTitle()) .setParameter("uploaded", video.getUploaded()) .setParameter("views", video.getViews()) - .setParameter("id", video.getId()).executeUpdate(); + .setParameter("id", video.getId()) + .executeUpdate(); tr.commit(); } catch (Exception e) { tr.rollback();