pg_timetable v4 is out!Our team is proud to introduce new major pg_timetable v4 with the new documentation, configuration file support, reimplemented logging machinery, job and task timeouts support, new CopyFromFile built-in functionality, and many more! Please, use our new detailed manual to know more about new features and settings. DownloadYou're welcome to download the pg_timetable v4 right now at: https://github.com/cybertec-postgresql/pg_timetable/releases FeedbackPlease don't hesitate to ask any questions, to report bugs, to star pg_timetable project and to tell the world about it. Changelog 💔🌄🧪[!] add configuration file support with Viper, closes #177 bebab44[!] add CopyFromFile built-in task f87d6fc [!] add Readthedocs documentation (#254) 004b31f [!] merge timetable.command table with timetable.task , closes #261 8604b18[!] reimplement logging, closes #158 (#231) 4313948 [!] remove jmoiron/sqlx and DATA-DOG/go-sqlmock dependencies, closes #187 #202 6542b71 [!] remove old migrations and start from scratch, closes #258 020563d [!] rewrite cron handling from scratch 35a8cc8 fbfbfb2[!] rewrite pgengine and scheduler without global variables as classes fa37167 [!] use Go 1.16 to build releases 729ef31 [!] use new consistent terminology: command -> task -> chain f59fdda[+] add $PGTT_CLIENTNAME env var 31faae6 [+] add --cronworkers and --intervalworkers options under "Resource" group 91f5c0e [+] add .pgpass support, closes #247 d3a317f[+] add --chain-timeout command-line parameter, closes #270 7f27a50[+] add --log-database-level command-line parameter, closes #274 338c28c[+] add --task-timeout command line parameter 80428a7[+] add all release badge 0b1ae61 [+] add chain timeout, closes #267 05b9736[+] add config.example.yaml file bebab44[+] add config_test 5df8386 [+] add database comments for objects f59fdda[+] add docs badge e325ff5 [+] add high load skip timeout to LogHook 0513ba8[+] add log hook for PostgreSQL using COPY machinery 93d51cc [+] add LogHook tests 0513ba8 [+] add output for built-in and SQL tasks to the timetable.execution_log, closes #185 (#224) 681caf3 [+] add pgengine.NewDB function 330cb62 [+] add pgxpoolIface 33fa7a4 [+] add support for logging to file, closes #272 6a73a80[+] add supported cloud environments to the readme, #256 70c9f49[+] add supported PostgreSQL versions and operating systems to the readme, closes #256 5695742[+] add task timeout, closes #271 80428a7[+] add TASK_STARTED and TASK_DONE statuses, rename STARTED to CHAIN_STARTED 660e32b[+] add TestMigratorOptions() and increase TestMigrateTxError() coverage 466c909 [+] add TestSchedulerExclusiveLocking() 08e7ff9 [+] add TestSelectChains() 3696f01 [+] add time zone information to the manual 77c0237[+] add version number to all release files, closes #228 cf72721 [+] allow specify content-type for SendMail built-in task, closes #225 (#226) 100bedd [+] bump github.com/pashagolub/pgxmock 1.2.0 af98bfd[+] bump github.com/spf13/viper to 1.8.1 e7b30fd[+] bump jackc/pgconn version to 1.9.0 7f2d671[+] bump jackc/pgtype version to 1.8.0 7f2d671[+] bump jackc/pgx version to 4.12.0 7f2d671[+] bump jessevdk/go-flags version to 1.5.0 7f2d671[*] bump georgysavva/scany to 0.2.9 c1f9529 [+] create Dependabot config file 37729d7 [+] delete only succeeded self-destructive chains, closes #265 613a945[+] increase TestMigrations() coverage 975d68c [+] Increase v4 tests coverage (#222) 9689e50 [+] insert run status immediately during max_instance check, closes #223 5765662 [+] introduce PgxIface, PgxConnIface, PgxPoolIface b028eaa[+] move cache settings to LogHook 0513ba8[+] set client name during LogHook creation 0513ba8[+] specify password for tests explicitly 524046f [+] use //go:embed for migration .sql files aaee11d [+] use //go:embed for pgengine .sql files b453937 [+] use retcode and deferred functions instead of os.Exit() 7a1cdfa [*] change "--port" command-line option type to integer bebab44 [*] decrease run_status rows usage by using only task-related information 660e32b [*] improve and rename get_running_jobs() to get_chain_running_statuses() 7a1cdfa [*] improve TestExecuteSQLTask() 396cc88 [*] improve timetable.run_status table 7a1cdfa [*] make go test fail fast in the build action 35a8cc8 [*] make pgengine.NewDB() and config.NewCmdOptions() use variadic string params 524046f[*] move health_check() function to job_functions.sql 7a1cdfa [*] move Logger to appropriate file b5bcece [*] move PgURL parsing to the pgengine bebab44[*] move SetupCloseHandler to main.go 7a1cdfa[*] remove sensitive information from logs, closes #286 aba954d [*] remove unused chain.excluded_execution_configs column f59fdda[*] remove unused PgEngine.CanProceedChainExecution() 4cf2323 [*] remove unused timetable.trig_chain_fixer(), closes #255 5b033d7 [*] rename pgengine.UpdateChainRunStatus to AddChainRunStatus 660e32b[*] rename rus_status.current_execution_element column to command_id 660e32b[*] replace "--verbose" command-line option with "--loglevel" bebab44[*] return immediately from pgengine.CanProceedChainExecution if context expired 34946b8 [*] simplify pgengine.CanProceedChainExecution() function 7a1cdfa [*] simplify readme.md, #256 b7cc5bf [*] split options into groups: Connection, Logging, Start, etc. bebab44[*] store remote database connection strings in chain table directly, closes #234 20f28f8 [*] support alpha-beta strings in tag name for Release action e7318a8 [*] switch to ory/mail from abandoned gomail, closes #248 21858fd [*] update Golang version used in Github Actions 944b903 [*] update latest release badge by including pre-releases 8645ee0[*] use channel for error instead of variable 0513ba8[*] use dashes in long command-line parameters names 6a73a80[*] uses error log level during tests by default 524046f[-] fix 'date/time field value out of range' error in next_run(), fixes #237 35a8cc8 [-] fix --pgurl ignored during connection, closes #252 5d771df [-] fix empty long dash separated command-line parameters, fixes #279 4e8016f[-] fix ErrNoRows check in CanProceedChainExecution() f0701c4 [-] fix SelectChain() 8b802c3 [-] remove database/sql from import eeb3eb4 [-] remove STRICT option from add_job() function, fixes #291 2eff73a[-] remove unneeded logging CheckNeedMigrateDb() function f59fdda
|