From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- dev-db/pgagent/Manifest | 10 + dev-db/pgagent/files/add-log-timestamps.patch | 535 +++++++++++++++++++++ .../files/fix-dbconn-getlasterror-crash.patch | 32 ++ dev-db/pgagent/files/fix-job-success-test.patch | 30 ++ dev-db/pgagent/files/pgagent.confd | 22 + dev-db/pgagent/files/pgagent.initd-r1 | 31 ++ dev-db/pgagent/files/postgres-10-build-fix.patch | 52 ++ .../pgagent/files/save-stderr-jobstep-output.patch | 79 +++ dev-db/pgagent/metadata.xml | 8 + dev-db/pgagent/pgagent-3.4.0-r3.ebuild | 78 +++ 10 files changed, 877 insertions(+) create mode 100644 dev-db/pgagent/Manifest create mode 100644 dev-db/pgagent/files/add-log-timestamps.patch create mode 100644 dev-db/pgagent/files/fix-dbconn-getlasterror-crash.patch create mode 100644 dev-db/pgagent/files/fix-job-success-test.patch create mode 100644 dev-db/pgagent/files/pgagent.confd create mode 100644 dev-db/pgagent/files/pgagent.initd-r1 create mode 100644 dev-db/pgagent/files/postgres-10-build-fix.patch create mode 100644 dev-db/pgagent/files/save-stderr-jobstep-output.patch create mode 100644 dev-db/pgagent/metadata.xml create mode 100644 dev-db/pgagent/pgagent-3.4.0-r3.ebuild (limited to 'dev-db/pgagent') diff --git a/dev-db/pgagent/Manifest b/dev-db/pgagent/Manifest new file mode 100644 index 000000000000..08b7572768ee --- /dev/null +++ b/dev-db/pgagent/Manifest @@ -0,0 +1,10 @@ +AUX add-log-timestamps.patch 18087 BLAKE2B f5febe934692aa8c6a794aa711de5152629c6f4e88ba1582378f0bfbc6e6e4de0f1464a62da63c76060c5672db460c7c7a1763279052f2ffdcb5b84c20bcbc97 SHA512 ce5d00aeda35bc4282ca65e8112be35e6f28cb70ff64316e47ab2247574ba71edbc99a1b4567df6a5a40bda1c8dbb5a1d65faa45054a7c63444c8591c9c059c5 +AUX fix-dbconn-getlasterror-crash.patch 1242 BLAKE2B f60c02a1044d1768dd8e9ae6c30281d893ee31219b0cfc2a736def73620b716e0c67878691229908599c362f29b8e92a4cf68c6f1890efde719bc68998e38391 SHA512 fa5553592878a6778d56306b515804ff60510c2327ea13d2f11f6b1259c13dc908237065bcc3e79a975128fa5e48e68135f1357e9c5053fb667e52c8d1a14dc0 +AUX fix-job-success-test.patch 1119 BLAKE2B f21cd2d132fc272be1f2add642f8b8b92c0b43aa94d84d824a40b16baf2a79818dbcf8344a6689ba33f326a56f902a79c746d55300c8da272789ba633d096688 SHA512 67f8c882b548057095b6914e6462b4e87be02fedc9c281d4aa4a4f1b936d257b9b0c9e01cd06e5a5e065e5ee128dc0da9416a436e78ab956b7d68f117e0bd102 +AUX pgagent.confd 292 BLAKE2B e40e12a1a915653ffa62b113733db93cc7b1c3fc7200ef476a91080fdc054fdb64b6ee9b838583b93b27827a7858e905df8fbe0084dedd8d70deee6887469005 SHA512 a7346ae4dc7231efb8c29d3b7a1d7d377a2b1dabe01b0be9b090e070bec927b29d8e8c20ce30d437cab2ab5c119af89dfcdc6f75fecaca7366b2c10c5e48ed11 +AUX pgagent.initd-r1 837 BLAKE2B 27bd762c0fd56cf63d1c31c2c0d94b6d8ed62dbfeaed42e260294604a5059c55dc9d204a526bfd5725831c99f712f1e5812a8bb7ee80cb745fc9bebfa06d7359 SHA512 ec6843ad55a7b2800c146ce7ee0551c5ede319d1fca1cfd700acd2245c6fcbaa36a87ad6cda04f33e124b479e6ca6b040cb57d0f78e40d335276e29c800f6627 +AUX postgres-10-build-fix.patch 2421 BLAKE2B 3b6865e7843edf420b59b1f2ededbca9707145d2b98a8d1cd015cadbe1dcf8729eb39d300c63ee847ae5c229a3583b4bd137139a007e8eda4bf8af670f99f6c4 SHA512 52aaf0582d8132904d7b95fc523d597749f045f9d465401ed851ebfeeb0824d2c8668ba0525db5e15a3966b388215e885aaea5626e3102a765fb7f2a2ba0b349 +AUX save-stderr-jobstep-output.patch 2626 BLAKE2B 8a0eb06fecb9450e027219f2ede7b9dc3fbeb6ad1d70e15f5294c954a924c9eb82b10569a6b045e6acd79430b1f5d7116ba4f19316599a2354dc9795ae274458 SHA512 b84b52e5a96d98067eab5e4877c54e02e3c912215067f4e1a1c9d3983a29acfd3e63fe666c6e62cf46391fb72cb02b4197d23e305cadf88da096f80d8e0c8167 +DIST pgAgent-3.4.0-Source.tar.gz 45081 BLAKE2B 81f074213285253743127188d9e203cb01d8492ce502dc5215279c7c557fdd7f532fa383a4578a8d9cc8ea46668ea971015e4cc5989d1b8022ed8924a92b988b SHA512 3b068fc6f5e51ff20604f8cec3e067d04b5b1537229da15ee442000f5fe834697a4eae86be0e9a58b8ee5da24cc985c8c9804d71cb2a50e93ec4cf9a424a4ff0 +EBUILD pgagent-3.4.0-r3.ebuild 2048 BLAKE2B 31024adad4855032de45c132b387ca6ab77b77f25a377bd99a41b01e762e3894b4bfaaa4473ea7b59bdb5ce9ec29fa74b3d9103293a967e1f4836a73a246908f SHA512 e4eb7d78268f4198159480b5105a815aff8c4d408b85f5a005057cdd04bf1393da136efe0f85b728de1e268d1053d7ace2b36ddc2d6d8f5271afb73706a9e013 +MISC metadata.xml 298 BLAKE2B 40abb765b052aa2cbbf749c54c686f1c98968cb1af2e93c149bfbfe6244d3c17e827189d7a1da90a566016758bfbed63b16ad0a0328725349748d1b18b2437b1 SHA512 167896d1d92ccb4b171cce16d63405369a9e28b0d01c12b2ed94fcec1f982892e179c007287fc3386e1c00393d6570a2ae9e8efe9420e53a82308426075d5c89 diff --git a/dev-db/pgagent/files/add-log-timestamps.patch b/dev-db/pgagent/files/add-log-timestamps.patch new file mode 100644 index 000000000000..8d9eb4a3e8e2 --- /dev/null +++ b/dev-db/pgagent/files/add-log-timestamps.patch @@ -0,0 +1,535 @@ +From 2eef6cc4928c611cecdca3c1daecb60568deca4e Mon Sep 17 00:00:00 2001 +From: Sanket Mehta +Date: Fri, 17 Jul 2015 09:07:09 +0100 +Subject: [PATCH] Add log timestamps and a --version option per Josh Berkus. + Update copyright notices while passing. + +--- + CMakeLists.txt | 8 ++++---- + LICENSE | 2 +- + cmake/MakeExt.cmake | 2 +- + connection.cpp | 2 +- + include/connection.h | 2 +- + include/job.h | 2 +- + include/misc.h | 3 ++- + include/pgAgent.h | 2 +- + job.cpp | 2 +- + misc.cpp | 14 +++++++++++++- + pgAgent.cpp | 2 +- + pgAgent.rc | 14 +++++++------- + pgaevent/CMakeLists.txt | 2 +- + pgaevent/pgaevent.c | 2 +- + pgaevent/pgaevent.def | 2 +- + pgaevent/pgamsgevent.h | 2 +- + pgaevent/pgamsgevent.rc | 14 +++++++------- + precomp.cpp | 2 +- + sql/pgagent--unpackaged--3.4.sql | 2 +- + sql/pgagent.sql | 2 +- + sql/pgagent_upgrade.sql | 2 +- + unix.cpp | 16 +++++++++++----- + win32.cpp | 5 ++++- + 23 files changed, 64 insertions(+), 42 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ab02fea..c8bfa4a 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,7 +1,7 @@ + ####################################################################### + # + # pgAgent - PostgreSQL tools +-# Copyright (C) 2002 - 2014, The pgAdmin Development Team ++# Copyright (C) 2002 - 2015, The pgAdmin Development Team + # This software is released under the PostgreSQL Licence + # + # CMakeLists.txt - CMake build configuration +@@ -27,7 +27,6 @@ SET(CMAKE_FIND_LIBRARY_PREFIXES "") + SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib") + + SET(STATIC_BUILD YES CACHE BOOL "Statically link the executable?") +- + ################################################################################ + # Apple stuff + ################################################################################ +@@ -61,12 +60,12 @@ PROJECT(pgagent) + # in pgagent.sql and upgrade_pgagent.sql if the major version number is + # changed. The full version number also needs to be included in pgAgent.rc and + # pgaevent/pgamsgevent.rc at present. +-SET(VERSION 3.4.0) ++SET(VERSION "3.4.1") + + # CPack stuff + SET(CPACK_PACKAGE_VERSION_MAJOR 3) + SET(CPACK_PACKAGE_VERSION_MINOR 4) +-SET(CPACK_PACKAGE_VERSION_PATCH 0) ++SET(CPACK_PACKAGE_VERSION_PATCH 1) + SET(CPACK_PACKAGE_NAME "pgAgent") + SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "pgAgent is a job scheduling engine for PostgreSQL") + SET(CPACK_PACKAGE_VENDOR "the pgAdmin Development Team") +@@ -79,6 +78,7 @@ SET(CPACK_SOURCE_GENERATOR TGZ) + SET(CPACK_SOURCE_IGNORE_FILES "\\\\.DS_Store;/CVS/;/\\\\.svn/;\\\\.swp$;\\\\.#;/#;.*~;cscope.*") + + ADD_DEFINITIONS(-DPGAGENT_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR}) ++ADD_DEFINITIONS(-DPGAGENT_VERSION="${VERSION}") + + # This must come after we set the CPACK variables!! + INCLUDE(CPack) +diff --git a/LICENSE b/LICENSE +index 3b2638a..c460d6f 100644 +--- a/LICENSE ++++ b/LICENSE +@@ -1,6 +1,6 @@ + pgAgent + +-Copyright (c) 2002 - 2014, The pgAdmin Development Team ++Copyright (c) 2002 - 2015, The pgAdmin Development Team + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose, without fee, and without a written agreement is +diff --git a/cmake/MakeExt.cmake b/cmake/MakeExt.cmake +index 5777c97..ae30e30 100644 +--- a/cmake/MakeExt.cmake ++++ b/cmake/MakeExt.cmake +@@ -1,7 +1,7 @@ + ####################################################################### + # + # pgAgent - PostgreSQL tools +-# Copyright (C) 2002 - 2014, The pgAdmin Development Team ++# Copyright (C) 2002 - 2015, The pgAdmin Development Team + # This software is released under the PostgreSQL Licence + # + # MakeExt,cmake - Create the PG Extension +diff --git a/connection.cpp b/connection.cpp +index f2213bd..25432bb 100644 +--- a/connection.cpp ++++ b/connection.cpp +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // connection.cpp - database connection +diff --git a/include/connection.h b/include/connection.h +index a201450..064067c 100644 +--- a/include/connection.h ++++ b/include/connection.h +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // connection.h - database connection +diff --git a/include/job.h b/include/job.h +index e511852..abc33d4 100644 +--- a/include/job.h ++++ b/include/job.h +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // job.h - agent job +diff --git a/include/misc.h b/include/misc.h +index 14b4edc..59847d1 100644 +--- a/include/misc.h ++++ b/include/misc.h +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // misc.h - misc functions +@@ -18,6 +18,7 @@ void WaitAWhile(const bool waitLong = false); + void setOptions(int argc, char **argv, const wxString &executable); + wxString getArg(int &argc, char **&argv); + wxString NumToStr(const long l); ++void printVersion(); + + #endif // MISC_H + +diff --git a/include/pgAgent.h b/include/pgAgent.h +index 6ef4944..059e0ca 100644 +--- a/include/pgAgent.h ++++ b/include/pgAgent.h +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgAgent.h - main include +diff --git a/job.cpp b/job.cpp +index c4b39ce..f3eaa03 100644 +--- a/job.cpp ++++ b/job.cpp +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014 The pgAdmin Development Team ++// Copyright (C) 2002 - 2015 The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // job.cpp - pgAgent job +diff --git a/misc.cpp b/misc.cpp +index dfd56a0..2252d83 100644 +--- a/misc.cpp ++++ b/misc.cpp +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014 The pgAdmin Development Team ++// Copyright (C) 2002 - 2015 The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // misc.cpp - misc functions +@@ -16,6 +16,8 @@ + #include + #endif + ++#define APPVERSION_STR wxT(PGAGENT_VERSION) ++ + // In unix.c or win32.c + void usage(const wxString &executable); + +@@ -42,6 +44,11 @@ wxString getArg(int &argc, char **&argv) + return s; + } + ++void printVersion() ++{ ++ wxPrintf(_("PostgreSQL Scheduling Agent\n")); ++ wxPrintf(_("Version: %s\n"), APPVERSION_STR); ++} + + void setOptions(int argc, char **argv, const wxString &executable) + { +@@ -72,6 +79,11 @@ void setOptions(int argc, char **argv, const wxString &executable) + minLogLevel = val; + break; + } ++ case 'v': ++ { ++ printVersion(); ++ exit (0); ++ } + #ifndef __WXMSW__ + case 'f': + { +diff --git a/pgAgent.cpp b/pgAgent.cpp +index 5ed43fb..9238fa1 100644 +--- a/pgAgent.cpp ++++ b/pgAgent.cpp +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgAgent.cpp - pgAgent main entry +diff --git a/pgAgent.rc b/pgAgent.rc +index 3c51bfa..c4169e1 100644 +--- a/pgAgent.rc ++++ b/pgAgent.rc +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgAgent.rc - win32 Resources +@@ -16,8 +16,8 @@ aaaPGAGENT ICON DISCARDABLE "include/pgAgent.ico" + + + VS_VERSION_INFO VERSIONINFO +-FILEVERSION 3,4,0,0 +-PRODUCTVERSION 3,4,0,0 ++FILEVERSION 3,4,1,0 ++PRODUCTVERSION 3,4,1,0 + FILEOS VOS__WINDOWS32 + FILETYPE VFT_APP + BEGIN +@@ -25,15 +25,15 @@ BEGIN + BEGIN + BLOCK "040904E4" + BEGIN +- VALUE "FileVersion", "3.4.0", "\0" +- VALUE "File Version", "3.4.0", "\0" ++ VALUE "FileVersion", "3.4.1", "\0" ++ VALUE "File Version", "3.4.1", "\0" + VALUE "FileDescription", "pgAgent - PostgreSQL Scheduling Agent", "\0" +- VALUE "LegalCopyright", "\251 2002 - 2012, The pgAdmin Development Team", "\0" ++ VALUE "LegalCopyright", "\251 2002 - 2015, The pgAdmin Development Team", "\0" + VALUE "LegalTrademarks", "This software is released under the PostgreSQL Licence.", "\0" + VALUE "InternalName", "pgAgent", "\0" + VALUE "OriginalFilename","pgagent.exe", "\0" + VALUE "ProductName", "pgAgent", "\0" +- VALUE "ProductVersion", "3.4.0", "\0" ++ VALUE "ProductVersion", "3.4.1", "\0" + END + END + BLOCK "VarFileInfo" +diff --git a/pgaevent/CMakeLists.txt b/pgaevent/CMakeLists.txt +index 10478c3..2fd6192 100644 +--- a/pgaevent/CMakeLists.txt ++++ b/pgaevent/CMakeLists.txt +@@ -1,7 +1,7 @@ + ####################################################################### + # + # pgAgent - PostgreSQL tools +-# Copyright (C) 2002 - 2014, The pgAdmin Development Team ++# Copyright (C) 2002 - 2015, The pgAdmin Development Team + # This software is released under the PostgreSQL Licence + # + # pgaevent/CMakeLists.txt - CMake build configuration +diff --git a/pgaevent/pgaevent.c b/pgaevent/pgaevent.c +index a66ed42..c9fac75 100644 +--- a/pgaevent/pgaevent.c ++++ b/pgaevent/pgaevent.c +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgaevent.c - win32 message format dll +diff --git a/pgaevent/pgaevent.def b/pgaevent/pgaevent.def +index c9e222d..34e03c1 100644 +--- a/pgaevent/pgaevent.def ++++ b/pgaevent/pgaevent.def +@@ -2,7 +2,7 @@ + ; // + ; // pgAgent - PostgreSQL Tools + ; // +-; // Copyright (C) 2002 - 2014 The pgAdmin Development Team ++; // Copyright (C) 2002 - 2015 The pgAdmin Development Team + ; // This software is released under the PostgreSQL Licence + ; // + ; // pgaeventdef - pgaevent.dll exports +diff --git a/pgaevent/pgamsgevent.h b/pgaevent/pgamsgevent.h +index b8e11a5..f589d60 100644 +--- a/pgaevent/pgamsgevent.h ++++ b/pgaevent/pgamsgevent.h +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgamsgevent.h - Message id declarations +diff --git a/pgaevent/pgamsgevent.rc b/pgaevent/pgamsgevent.rc +index 79e77aa..510ab65 100644 +--- a/pgaevent/pgamsgevent.rc ++++ b/pgaevent/pgamsgevent.rc +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgaevent.rc - win32 Resources +@@ -19,8 +19,8 @@ aaaPGAEVENT ICON DISCARDABLE "../include/pgagent.ico" + + + VS_VERSION_INFO VERSIONINFO +-FILEVERSION 3,4,0,0 +-PRODUCTVERSION 3,4,0,0 ++FILEVERSION 3,4,1,0 ++PRODUCTVERSION 3,4,1,0 + FILEOS VOS__WINDOWS32 + FILETYPE VFT_APP + BEGIN +@@ -28,15 +28,15 @@ BEGIN + BEGIN + BLOCK "040904E4" + BEGIN +- VALUE "FileVersion", "3.4.0", "\0" +- VALUE "File Version", "3.4.0", "\0" ++ VALUE "FileVersion", "3.4.1", "\0" ++ VALUE "File Version", "3.4.1", "\0" + VALUE "FileDescription", "pgaevent - pgAgent Event Log Message DLL", "\0" +- VALUE "LegalCopyright", "\251 2002 - 2014, The pgAdmin Development Team", "\0" ++ VALUE "LegalCopyright", "\251 2002 - 2015, The pgAdmin Development Team", "\0" + VALUE "LegalTrademarks", "This software is released under the PostgreSQL Licence.", "\0" + VALUE "InternalName", "pgaevent", "\0" + VALUE "OriginalFilename","pgaevent.dll", "\0" + VALUE "ProductName", "pgAgent", "\0" +- VALUE "ProductVersion", "3.4.0", "\0" ++ VALUE "ProductVersion", "3.4.1", "\0" + END + END + BLOCK "VarFileInfo" +diff --git a/precomp.cpp b/precomp.cpp +index 02c969f..56766bb 100644 +--- a/precomp.cpp ++++ b/precomp.cpp +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // precomp.cpp - pgAgent precompiled headers +diff --git a/sql/pgagent--unpackaged--3.4.sql b/sql/pgagent--unpackaged--3.4.sql +index 536640e..f5ffc63 100644 +--- a/sql/pgagent--unpackaged--3.4.sql ++++ b/sql/pgagent--unpackaged--3.4.sql +@@ -1,7 +1,7 @@ + /* + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014 The pgAdmin Development Team ++// Copyright (C) 2002 - 2015 The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgagent--unpackaged--3.4.sql - Convert pgAgent existing tables and functions to an extension +diff --git a/sql/pgagent.sql b/sql/pgagent.sql +index 3708adf..1118833 100644 +--- a/sql/pgagent.sql ++++ b/sql/pgagent.sql +@@ -1,7 +1,7 @@ + /* + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014 The pgAdmin Development Team ++// Copyright (C) 2002 - 2015 The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgagent.sql - pgAgent tables and functions +diff --git a/sql/pgagent_upgrade.sql b/sql/pgagent_upgrade.sql +index ae0d995..c256c93 100644 +--- a/sql/pgagent_upgrade.sql ++++ b/sql/pgagent_upgrade.sql +@@ -1,7 +1,7 @@ + /* + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014 The pgAdmin Development Team ++// Copyright (C) 2002 - 2015 The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // pgagent_upgrade.sql - Upgrade pgAgent tables and functions +diff --git a/unix.cpp b/unix.cpp +index 34ad0f6..e206408 100644 +--- a/unix.cpp ++++ b/unix.cpp +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014, The pgAdmin Development Team ++// Copyright (C) 2002 - 2015, The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // unix.cpp - pgAgent unix specific functions +@@ -17,14 +17,17 @@ + #include + #include + #include ++void printVersion(); + + void usage(const wxString &executable) + { + wxFileName *fn = new wxFileName(executable); ++ printVersion(); + + wxPrintf(_("Usage:\n")); + wxPrintf(fn->GetName() + _(" [options] \n")); + wxPrintf(_("options:\n")); ++ wxPrintf(_("-v (display version info and then exit)\n")); + wxPrintf(_("-f run in the foreground (do not detach from the terminal)\n")); + wxPrintf(_("-t \n")); + wxPrintf(_("-r =10, default 30)>\n")); +@@ -50,22 +53,25 @@ void LogMessage(wxString msg, int level) + return; + } + ++ wxDateTime logTime = wxDateTime::Now(); ++ wxString logTimeString = logTime.Format() + wxT(" : "); ++ + switch (level) + { + case LOG_DEBUG: + if (minLogLevel >= LOG_DEBUG) +- file.Write(_("DEBUG: ") + msg + wxT("\n")); ++ file.Write(logTimeString + _("DEBUG: ") + msg + wxT("\n")); + break; + case LOG_WARNING: + if (minLogLevel >= LOG_WARNING) +- file.Write(_("WARNING: ") + msg + wxT("\n")); ++ file.Write(logTimeString + _("WARNING: ") + msg + wxT("\n")); + break; + case LOG_ERROR: +- file.Write(_("ERROR: ") + msg + wxT("\n")); ++ file.Write(logTimeString + _("ERROR: ") + msg + wxT("\n")); + exit(1); + break; + case LOG_STARTUP: +- file.Write(_("WARNING: ") + msg + wxT("\n")); ++ file.Write(logTimeString + _("WARNING: ") + msg + wxT("\n")); + break; + } + +diff --git a/win32.cpp b/win32.cpp +index aa5d5d7..624ae77 100644 +--- a/win32.cpp ++++ b/win32.cpp +@@ -2,7 +2,7 @@ + // + // pgAgent - PostgreSQL Tools + // +-// Copyright (C) 2002 - 2014 The pgAdmin Development Team ++// Copyright (C) 2002 - 2015 The pgAdmin Development Team + // This software is released under the PostgreSQL Licence + // + // win32.cpp - pgAgent win32 specific functions +@@ -36,6 +36,7 @@ static HANDLE serviceSync; + static HANDLE eventHandle; + + bool stopService(); ++void printVersion(); + + // This will be called from MainLoop, if pgagent is initialized properly + void Initialized() +@@ -435,12 +436,14 @@ bool removeService(const wxString &serviceName) + void usage(const wxString &executable) + { + wxFileName *fn = new wxFileName(executable); ++ printVersion(); + + wxPrintf(_("Usage:\n")); + wxPrintf(fn->GetName() + _(" REMOVE \n")); + wxPrintf(fn->GetName() + _(" INSTALL [options] \n")); + wxPrintf(fn->GetName() + _(" DEBUG [options] \n")); + wxPrintf(_("options:\n")); ++ wxPrintf(_("-v (display version info and then exit)\n")); + wxPrintf(_("-u \n")); + wxPrintf(_("-p \n")); + wxPrintf(_("-d \n")); diff --git a/dev-db/pgagent/files/fix-dbconn-getlasterror-crash.patch b/dev-db/pgagent/files/fix-dbconn-getlasterror-crash.patch new file mode 100644 index 000000000000..633a359b6765 --- /dev/null +++ b/dev-db/pgagent/files/fix-dbconn-getlasterror-crash.patch @@ -0,0 +1,32 @@ +From f9bf1ccb27ebcfce00e7a6d467bc0e1b5ee9555e Mon Sep 17 00:00:00 2001 +From: Ashesh Vashi +Date: Wed, 1 Apr 2015 15:24:11 +0530 +Subject: [PATCH] Fixed a bug in DBconn::GetLastError() function. + +pgAgent was crashing, while removing the trailing new-lines from the +empty error message string (Reported by: Thomas Krennwallner) +--- + connection.cpp | 10 +--------- + 1 file changed, 1 insertion(+), 9 deletions(-) + +diff --git a/connection.cpp b/connection.cpp +index b7623e6..f2213bd 100644 +--- a/connection.cpp ++++ b/connection.cpp +@@ -313,15 +313,7 @@ int DBconn::ExecuteVoid(const wxString &query) + + wxString DBconn::GetLastError() + { +- // Return the last error message, minus any trailing line ends +- if (lastError.substr(lastError.length() - 2, 2) == wxT("\r\n")) // DOS +- return lastError.substr(0, lastError.length() - 2); +- else if (lastError.substr(lastError.length() - 1, 1) == wxT("\n")) // Unix +- return lastError.substr(0, lastError.length() - 1); +- else if (lastError.substr(lastError.length() - 1, 1) == wxT("\r")) // Mac +- return lastError.substr(0, lastError.length() - 1); +- else +- return lastError; ++ return lastError.Trim(true); + } + + ///////////////////////////////////////////////////////7 diff --git a/dev-db/pgagent/files/fix-job-success-test.patch b/dev-db/pgagent/files/fix-job-success-test.patch new file mode 100644 index 000000000000..cd5495a52aa9 --- /dev/null +++ b/dev-db/pgagent/files/fix-job-success-test.patch @@ -0,0 +1,30 @@ +From 01b72d867cc2bdbaff1765499a6395f7bc94e2be Mon Sep 17 00:00:00 2001 +From: Sanket Mehta +Date: Tue, 1 Dec 2015 11:34:32 +0530 +Subject: [PATCH] Set 'succeeded' flag to true/false by checking for the step + failure everytime (it gets executed). + +These was an issue with the current implementation. + +Once the 'succeeded' flag is set to true, the following batch step +execution does not stop executiong of following steps on failure, even +we have set 'onerror' to 'f' for that step. +--- + job.cpp | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/job.cpp b/job.cpp +index f3eaa03..9864f57 100644 +--- a/job.cpp ++++ b/job.cpp +@@ -307,9 +307,7 @@ int Job::Execute() + + // set success status for batch runs, be pessimistic by default + LogMessage(wxString::Format(_("Script return code: %d"), rc), LOG_DEBUG); +- if (rc == 0) +- succeeded = true; +- ++ succeeded = ((rc == 0) ? true : false); + // If output is empty then either script did not return any output + // or script threw some error into stderr. + // Check script threw some error into stderr diff --git a/dev-db/pgagent/files/pgagent.confd b/dev-db/pgagent/files/pgagent.confd new file mode 100644 index 000000000000..0b2c7d788dd2 --- /dev/null +++ b/dev-db/pgagent/files/pgagent.confd @@ -0,0 +1,22 @@ +# Pool time interval +PGA_POLL="10" + +# Retry period +PGA_RETRY="30" + +# Log file +PGA_LOG="/var/log/pgagent.log" + +# Logging verbosity +# ERROR=0, WARNING=1, DEBUG=2 +PGA_LEVEL="1" + +# Server parameters +# Host address +PG_HOST="localhost" + +# DB name +PG_DBNAME="postgres" + +# Username +PG_USER="postgres" \ No newline at end of file diff --git a/dev-db/pgagent/files/pgagent.initd-r1 b/dev-db/pgagent/files/pgagent.initd-r1 new file mode 100644 index 000000000000..a555006d3bd2 --- /dev/null +++ b/dev-db/pgagent/files/pgagent.initd-r1 @@ -0,0 +1,31 @@ +#!/sbin/openrc-run +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +command="/usr/bin/pgagent" +command_user="pgagent" + +# If pgagent daemonizes itself, it won't write a PID file and +# we have to work a little harder to stop() it. So let it run +# in the foreground, and have OpenRC manage its PID file. +command_args="-f + -t ${PGA_POLL} + -r ${PGA_RETRY} + -s ${PGA_LOG} + -l ${PGA_LEVEL} + hostaddr=${PG_HOST} + dbname=${PG_DBNAME} + user=${PG_USER}" + +command_background="true" +pidfile="/run/pgagent.pid" + +depend() { + use net + need postgresql +} + +start_pre() { + # The log file needs to be writable by the daemon user. + checkpath --file --owner root:pgagent --mode 0660 "${PGA_LOG}" +} diff --git a/dev-db/pgagent/files/postgres-10-build-fix.patch b/dev-db/pgagent/files/postgres-10-build-fix.patch new file mode 100644 index 000000000000..e2ecb0aa60b7 --- /dev/null +++ b/dev-db/pgagent/files/postgres-10-build-fix.patch @@ -0,0 +1,52 @@ +From a7b82fb3d3bd3de3ce624d9e4b0da53cb9835c2d Mon Sep 17 00:00:00 2001 +From: Ashesh Vashi +Date: Mon, 31 Jul 2017 14:57:55 +0530 +Subject: [PATCH] Added support two digits version for PostgreSQL/EDB Postgres + Advanced Server >= 10 + +--- + CMakeLists.txt | 6 +++++- + cmake/FindPG.cmake | 6 +++--- + 2 files changed, 8 insertions(+), 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8214650..29755b4 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -176,7 +176,11 @@ MESSAGE(STATUS " Description : ${CPACK_PACKAGE_DESCRIPTION_SUMM + MESSAGE(STATUS " Version : ${VERSION}") + MESSAGE(STATUS " ") + MESSAGE(STATUS " PostgreSQL version string : ${PG_VERSION_STRING}") +-MESSAGE(STATUS " PostgreSQL version parts : ${PG_MAJOR_VERSION}.${PG_MINOR_VERSION}.${PG_PATCH_VERSION}") ++IF(${PG_MAJOR_VERSION} GREATER 9) ++ MESSAGE(STATUS " PostgreSQL version parts : ${PG_MAJOR_VERSION}") ++ELSE() ++ MESSAGE(STATUS " PostgreSQL version parts : ${PG_MAJOR_VERSION}.${PG_MINOR_VERSION}") ++ENDIF(${PG_MAJOR_VERSION} GREATER 10) + MESSAGE(STATUS " PostgreSQL path : ${PG_ROOT_DIR}") + MESSAGE(STATUS " PostgreSQL config binary : ${PG_CONFIG_PATH}") + MESSAGE(STATUS " PostgreSQL include path : ${PG_INCLUDE_DIRS}") +diff --git a/cmake/FindPG.cmake b/cmake/FindPG.cmake +index 349086c..9768771 100644 +--- a/cmake/FindPG.cmake ++++ b/cmake/FindPG.cmake +@@ -28,7 +28,6 @@ + # PG_VERSION_STRING - The PostgreSQL version number. + # PG_MAJOR_VERSION - The PostgreSQL major version (x in x.y.z). + # PG_MINOR_VERSION - The PostgreSQL minor version (y in x.y.z). +-# PG_PATCH_VERSION - The PostgreSQL patch version (z in x.y.z). + # PG_EXTENSION - Set to TRUE if PostgreSQL supports extensions. + + IF(NOT PG_STATIC OR PG_STATIC STREQUAL "") +@@ -70,8 +69,9 @@ IF(NOT _retval) + # Split the version into its component parts. + STRING(REGEX MATCHALL "[0-9]+" PG_VERSION_PARTS "${PG_VERSION_STRING}") + LIST(GET PG_VERSION_PARTS 0 PG_MAJOR_VERSION) +- LIST(GET PG_VERSION_PARTS 1 PG_MINOR_VERSION) +- LIST(GET PG_VERSION_PARTS 2 PG_PATCH_VERSION) ++ IF((PG_MAJOR_VERSION LESS 10)) ++ LIST(GET PG_VERSION_PARTS 1 PG_MINOR_VERSION) ++ ENDIF((PG_MAJOR_VERSION LESS 10)) + + # Are extensions supported? + IF((PG_MAJOR_VERSION GREATER 9) OR ((PG_MAJOR_VERSION EQUAL 9) AND (PG_MINOR_VERSION GREATER 0))) diff --git a/dev-db/pgagent/files/save-stderr-jobstep-output.patch b/dev-db/pgagent/files/save-stderr-jobstep-output.patch new file mode 100644 index 000000000000..245dbe2764ea --- /dev/null +++ b/dev-db/pgagent/files/save-stderr-jobstep-output.patch @@ -0,0 +1,79 @@ +From 5d2e0d3500a8e144215cdfe10b52cf7415b58046 Mon Sep 17 00:00:00 2001 +From: Ashesh Vashi +Date: Mon, 25 May 2015 12:37:42 +0530 +Subject: [PATCH] Save the standarad error too along with the standard output + in the jobstep output for the batch jobs. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +[Worked on by: Mehmet Emin KARAKAŞ, Akshay Joshi] +[Reviewed and improvised by: Sanket Joshi, Ashesh Vashi] +--- + job.cpp | 37 +++++++++++++++++++++++++++++++++++++ + 1 file changed, 37 insertions(+) + +diff --git a/job.cpp b/job.cpp +index 00334ab..c4b39ce 100644 +--- a/job.cpp ++++ b/job.cpp +@@ -186,8 +186,10 @@ int Job::Execute() + + #ifdef __WIN32__ + wxString filename = dirname + wxT("\\") + jobid + wxT("_") + stepid + wxT(".bat"); ++ wxString errorFile = dirname + wxT("\\") + jobid + wxT("_") + stepid + wxT("_error.txt"); + #else + wxString filename = dirname + wxT("/") + jobid + wxT("_") + stepid + wxT(".scr"); ++ wxString errorFile = dirname + wxT("/") + jobid + wxT("_") + stepid + wxT("_error.txt"); + #endif + + // Write the script +@@ -233,6 +235,10 @@ int Job::Execute() + file->Close(); + LogMessage(wxString::Format(_("Executing script file: %s"), filename.c_str()), LOG_DEBUG); + ++ // freopen function is used to redirect output of stream (stderr in our case) ++ // into the specified file. ++ FILE *fpError = freopen(errorFile.mb_str(), "w", stderr); ++ + // Execute the file and capture the output + #ifdef __WIN32__ + // The Windows way +@@ -304,6 +310,37 @@ int Job::Execute() + if (rc == 0) + succeeded = true; + ++ // If output is empty then either script did not return any output ++ // or script threw some error into stderr. ++ // Check script threw some error into stderr ++ if (fpError) ++ { ++ //fclose(fpError); ++ FILE* fpErr = fopen(errorFile.mb_str(), "r"); ++ if (fpErr) ++ { ++ char buffer[4098]; ++ wxString errorMsg = wxEmptyString; ++ while (!feof(fpErr)) ++ { ++ if (fgets(buffer, 4096, fpErr) != NULL) ++ errorMsg += wxString(buffer, wxConvLibc); ++ } ++ ++ if (errorMsg != wxEmptyString) { ++ wxString errmsg = ++ wxString::Format( ++ _("Script Error: \n%s\n"), ++ errorMsg.c_str()); ++ LogMessage(errmsg, LOG_WARNING); ++ output += wxT("\n") + errmsg; ++ } ++ ++ fclose(fpErr); ++ } ++ wxRemoveFile(errorFile); ++ } ++ + // Delete the file/directory. If we fail, don't overwrite the script output in the log, just throw warnings. + if (!wxRemoveFile(filename)) + { diff --git a/dev-db/pgagent/metadata.xml b/dev-db/pgagent/metadata.xml new file mode 100644 index 000000000000..eb41154c968f --- /dev/null +++ b/dev-db/pgagent/metadata.xml @@ -0,0 +1,8 @@ + + + + + pgsql-bugs@gentoo.org + PostgreSQL and Related Package Development + + diff --git a/dev-db/pgagent/pgagent-3.4.0-r3.ebuild b/dev-db/pgagent/pgagent-3.4.0-r3.ebuild new file mode 100644 index 000000000000..81dd4cdf8aad --- /dev/null +++ b/dev-db/pgagent/pgagent-3.4.0-r3.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +CMAKE_IN_SOURCE_BUILD=1 +WX_GTK_VER="3.0" + +inherit cmake-utils user wxwidgets + +MY_PN=${PN/a/A} + +KEYWORDS="amd64 x86" + +DESCRIPTION="${MY_PN} is a job scheduler for PostgreSQL" +HOMEPAGE="http://www.pgadmin.org/download/pgagent.php" +SRC_URI="mirror://postgresql/pgadmin3/release/${PN}/${MY_PN}-${PV}-Source.tar.gz" +LICENSE="POSTGRESQL GPL-2" +SLOT="0" +IUSE="" + +RDEPEND="dev-db/postgresql:* + x11-libs/wxGTK:${WX_GTK_VER}" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_PN}-${PV}-Source" + +PATCHES=( + "${FILESDIR}/fix-dbconn-getlasterror-crash.patch" + "${FILESDIR}/save-stderr-jobstep-output.patch" + "${FILESDIR}/add-log-timestamps.patch" + "${FILESDIR}/fix-job-success-test.patch" + "${FILESDIR}/postgres-10-build-fix.patch" +) + +src_prepare() { + cmake-utils_src_prepare + + sed -e "s:share):share/${P}):" \ + -i CMakeLists.txt || die "failed to patch CMakeLists.txt" + sed -i -e '/SET(WX_VERSION "2.8")/d' CMakeLists.txt || die +} + +src_configure() { + if has_version "x11-libs/wxGTK[X]"; then + need-wxwidgets unicode + else + need-wxwidgets base-unicode + fi + mycmakeargs=( "-DSTATIC_BUILD:BOOLEAN=FALSE" + "-DWX_VERSION=${WX_GTK_VER}" ) + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + newinitd "${FILESDIR}/pgagent.initd-r1" "${PN}" + newconfd "${FILESDIR}/pgagent.confd" "${PN}" + + rm "${ED}"/usr/{LICENSE,README} || die "failed to remove useless docs" +} + +pkg_preinst() { + # This user needs a real shell, and the daemon will use the + # ~/.pgpass file from its home directory. + enewuser pgagent -1 /bin/bash /home/pgagent +} + +pkg_postinst() { + if [[ -n "${REPLACING_VERSIONS}" ]]; then + # This warning can be removed around a year after this version + # goes stable. + ewarn 'pgAgent now runs as a dedicated "pgagent" user (as' + ewarn 'opposed to root). You may need to move your /root/.pgpass' + ewarn 'file to /home/pgagent/.pgpass, and the new user will' + ewarn 'need permissions on any paths that it will access.' + fi +} -- cgit v1.2.3