Older Releases

Stable 1.7.1

Maturity:
Stable
Released on:
Monday, 17 November 2014 03:00
Description

QuartzDesk v1.7.1 Artifacts

QuartzDesk Standard / Enterprise Edition Users!

If you are upgrading the QuartzDesk JVM Agent from 1.6.x or an older release, please note that the first start of the agent can take long time due to database schema upgrades the agent automatically applies. The time depends on the amount of data stored in the qd_q_exec_history table in the QuartzDesk JVM Agent DB. In our test system that uses a PostgreSQL database with the following parameters, the agent upgrade takes nearly 2 hours.

Number of qd_q_exec_history records: 6,300,000
[ select count(*) from qd_q_exec_history; ]
Total size of qd_q_exec_history data: 11 GB
[ select pg_total_relation_size('qd_q_exec_history'); ]

Do not stop the agent (i.e. kill the JVM) while the upgrade process is in progress!

Please note that QuartDesk JVM Agent 1.7.x requires additional disk space in its work directory to store full-text indexes created and maintained by the agent. The amount of additional disk space depends primarily on the amount of data stored in the qd_q_exec_history table in the QuartzDesk JVM Agent DB.

In our test system with the above parameters, the full-text index occupies approx. 1 GB of disk space and it takes the agent 6 hours to fully populate the index. The index population process runs asynchronously and it does not block the agent's start nor does it block its operations. The agent can be safely stopped and restarted anytime during the initial index population. If the agent is restarted, the index population process is resumed where it previously finished.

 

Tomcat Users!

If you are upgrading the QuartzDesk Web Application from 1.4.x or an older release, you will need to update the QuartzDesk Web Application data-source JNDI name in your ${TOMCAT_HOME}/conf/server.xml file before deploying this release.

Old:
<jdbc/quartzdesk" 
             auth="Container" 
             type="javax.sql.DataSource"
             .../>
New:
<jdbc/QuartzDeskDS" 
             auth="Container" 
             type="javax.sql.DataSource"
             .../>

You will also need to update the QuartzDesk data-source JNDI name in the QuartzDesk Web Application deployment descriptor cached by Tomcat in ${TOMCAT_HOME}/conf/Catalina/[hostname]/quartzdesk.xml.

Old:
<jdbc/quartzdesk" type="javax.sql.DataSource"/>
New:
<jdbc/QuartzDeskDS" type="javax.sql.DataSource"/>

Please note that QuartzDesk Web Application Installation and Upgrade Guides have been updated to reflect this change.

 

 This is a minor bug-fix release. Please refer to the Release notes for the complete list of all fixes and other changes in this release.

Release notes

1.7.1

New features:

o AGENT, WEB: Added support for full-text searching in Jobs, Triggers, Execution History and Execution Notifications grids.

o AGENT, WEB: Added support for MS SQL Server 2008 R2 SP1 and Oracle 10.2 (10g R2).

o WEB: Added new ConnectionService web-service to allow external application to manage scheduler connections and folders that are displayed in the GUI.

o API: Improved logging in all logging appenders (Log4j, Log4j2, Logback) and handlers (JUL).

Fixed Bugs:

o WEB: Fixed AgentMessagePurgingJob cron schedule. The job was originally triggered every minute between 1am and 2am. Now it is triggered only once at 1am.

o WEB: SOAPFaults produced by all web-services (ConnectionService, MessageReceiverService, QuartzService) are now fully populated with an error-specific message and complete stack traces leading to the root cause error.

o AGENT: Fixed wrong JDBC driver class name in the sample quartzdesk-agent.properties (was org.h2.jdbcx.JdbcDataSource, now org.h2.Driver).

Changes:

o AGENT: JXMMP connector is now started by the agent in a daemon thread to prevent the JVM from exiting (JVM waits for all non-daemon threads to finish before it can exit).

o AGENT: Optimized fetching of execution history records from DB by excluding blob columns from result sets.

o AGENT: Reworked automatic registration of job and scheduler listeners with detected Quartz scheduler instances.

o AGENT: Major refactoring of the Quartz scheduler and job execution event listeners.

o WEB: Fixed the "Context initialization failed java.lang.IllegalArgumentException" problem that may occur during startup with JDK 1.8. This was actually a Spring issue (https://jira.spring.io/browse/SPR-10292) and it was resolved by upgrading to the latest stable Spring release 4.1.1.

o WEB: Added new versions of the QuartzService and MessageReceiverService web-services that use new XSD types ("http://service.quartzdesk.com/types/v1_0/" namespace). In this and future QuartzDesk release this makes it possible to use independent versioning for individual web-services. Previously any change to shared types resulted in a new version of all web-services.

 

1.6.0

Fixed Bugs:

o WEB: Improved checks for trigger existence to avoid NPE that could occur under rare circumstances while adding a new trigger. 

o WEB (TECH-G174R2960A): Fixed disappearing of currently executing jobs in the Currently Executing Jobs grid whose firing triggers have been deleted while the jobs are still running. Now the running jobs remain in the grid and can be accessed. 

o AGENT, WEB: Fixed QuartzDesk webapp deployment and runtime issues on JBoss caused by colliding classes in the com.quartzdesk.domain package exposed by the QuartzDesk Agent and the same classes present in the QuartzDesk web application. 

o AGENT: Fixed "com.quartzdesk.agent.api.AgentException: Error getting database schema SQL upgrade script URLs." error when upgrading the QuartzDesk Agent that has been configured to use an H2 database. 

Changes:

o WEB: Improved error reporting of the executing job interrupt operation. 

 

1.5.1

Fixed Bugs:

o WEB: Updated bundled JSTL lib from 1.2 to 1.2.1 to fix occasional NullPointerExceptions that can occur when the browser initiates multiple parallel requests for dynamically generated JS resources (Msg.js, LicensedProductFeatures.js etc.). The issue was caused by a synchronization bug in the JSTL 1.2 validator implementation.

o WEB: Fixed occasional "TypeError: QDesk.util.constant is undefined.", "QDesk.util.constant.ActionUrl is undefined" etc. JavaScript errors in browser console while loading the application. 

 

1.5.0

New features:

o AGENT: The agent can automatically start a JMXMP connector. Therefore users are no longer required to specify the JMX/RMI related Java system properties to start the JMX/RMI connector and they can safely switch to using the JMXMP connector. The JMXMP protocol is a firewall-friendly alternative to the commonly used JMX/RMI protocol. 

o AGENT: The agent can now be also loaded dynamically into the JVM by using the Sun/Oracle Attach API, or an alternative (proprietary) API. This is suitable for cases where users wish to bundle the agent with their application (typically a standalone Java application) and/or do not want to start the JVM with the javaagent JVM argument and the quartzdesk-agent.work.dir JVM property. 

o AGENT: Added new AgentInitializer API and initializerClass agent option. The value of this option is expected to be a FQCN of a class name implementing the com.quartzdesk.agent.api.IAgentInitializer interface. This option makes it possible to programmatically initialize and register the agent with the JVM that supports the Attach API. This new API and agent option is suitable for standalone applications that wish to have full control over agent initialization. 

o AGENT: Added support for H2 database profile. All H2 operating modes (in-memory, file and tcp) are supported. H2 support in the agent is intended primarily for development and experimental purposes. All QuartzDesk JVM Agent Installation and Upgrade Guides updated accordingly. 

o WEB: Added a new job AgentExecHistoryPurgingJob that purges old execution history records in QuartzDesk JVM Agent databases used by managed schedulers. This job purges execution history records that are older than the specified number of days (default is 400 days). Purging of old execution history records is disabled by default and it can be enabled in scheduler Settings. 

o WEB: Added a new job AgentExecHistoryLogPurgingJob that purges collected job execution log data in QuartzDesk JVM Agent databases used by managed schedulers. This job purges logs of execution history records that are older than the specified number of days (default is 30 days). Purging of execution history logs is disabled by default and it can be enabled in scheduler Settings. 

o WEB: Added a new job AgentMessagePurgingJob that purges old processed and permanently failed messages in QuartzDesk JVM Agent databases used by managed schedulers. The job purges messages that are older than the specified number of days (default is 30 days for processed messages and 60 days for permanently failed messages). Purging of old processed and permanently failed messages is disabled by default and it can be enabled in scheduler Settings.

o WEB: Extended support for H2 database profile. All H2 operating modes (in-memory, file and tcp) are supported. Previously the H2 database profile was only supported for the one-step installation mode. H2 support in the web application intended primarily for development and experimental purposes. All QuartzDesk Web Application Installation and Upgrade Guides updated accordingly.

o WEB: Added resizable splitters to the Jobs and Triggers tabs.

o WEB: Added tooltips to all forms. For example, all Edit Trigger forms have useful tooltips describing the trigger as well as individual trigger attributes.

Fixed Bugs:

o AGENT: Fixed a logback initialization issue (ext.ch.qos.logback.core.util.IncompatibleClassException) when the agent finds a logback.groovy, logback-test.xml, or logback.xml Logback configuration file on its classpath, or when the Logback configuration file is specified using the logback.configurationFile JVM system property. 

o AGENT, WEB: Fixed "org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content was found starting with element 'type'. One of '{issue-date}' is expected." thrown during agent/web-app startup on WebLogic 12c. 

o API: Fixed NPE in com.quartzdesk.api.agent.log.jul.JulInterceptionHandler thrown by the configured handler when the Agent is not installed. 

o WEB: Added a context menu (with a single menu item "Delete") to all job data map grids. 

o WEB: 'Max fetch date' and 'Max fetch size' tool bar option in Execution History grids are re-enabled after a data load error occurred. Previously these options were re-enabled only after a successful data load. 

o WEB: Fixed a bug with the Send Test Message button not working when editing a new message channel profile. 

o WEB: Excluded org.slf4j and org.slf4j.impl JBoss modules in jboss-deployment-structure.xml to make QuartzDesk log through the appenders configured in the logback.xml file located in the QuartzDesk work directory. 

Updates:

o AGENT: Users have 4 options to specify the agent work directory location: (1) Use the standard quartzdesk-agent.work.dir JVM property, or (2) use the new workDir Java agent option (-javaagent:=workDir=), (3) let the agent use the directory the agent JAR file is located in, or (4) use the new AgentInitializer API to programmatically initialize the agent.

o WEB: Significant (50%+) improvement in the application load/startup time. 

o WEB: All QuartzDesk internal Quartz jobs are now interruptible. Therefore you can interrupt these jobs using either the QuartzDesk web application GUI, or the QuartzAnywhere web-service API. 

o WEB: GlassFish deployment descriptor (glassfish-web.xml) now enforces parent-last class-loading order.

o WEB: QuartzDesk Web application data source name changed to jdbc/QuartzDeskDS.

o WEB: Added new settings (Maintenance Tasks configuration values) to the Edit Scheduler Connection dialog. 

o WEB: Added support for auto-disabling dialog form fields based on the installed QuartzDesk edition. This affects the Application Settings and the updated Edit Scheduler Connection dialogs. 

o WEB: Tooltips are no longer automatically dismissed after 5 seconds. They stay visible until the user hovers the mouse outside of the tooltip-enabled element. 

quartzdesk-agent-1.7.1.jar

File size:
8.37 Mb
MD5 Signature:
419d4f2986ea5ce5c6a2cb0b96adb0bc
SHA1 Signature:
b53a243d1be05c4feaa2a2e82b5295fbb85f6ce1

QuartzDesk JVM Agent Library

Required by: QuartzDesk Standard and Enterprise edition
Please refer to the QuartzDesk JVM Agent Installation and Upgrade Guide for installation / upgrade instructions.

This artifact is also available in the Maven Central repository.

quartzdesk-api-1.7.1.jar

File size:
959.25 Kb
MD5 Signature:
1c59cce33a57d238873bcbb1d407845f
SHA1 Signature:
f793fd8ded125267be0bb4fcefb4fa5a583bad19

QuartzDesk Public API Library

Required by: QuartzDesk Standard and Enterprise edition
Please refer to the QuartzDesk JVM Agent Installation and Upgrade Guide for installation / upgrade instructions.

This artifact is also available in the Maven Central repository. To add the library as a runtime dependency to your Maven project, please add the following dependency element to your project's POM:

<dependency>   <groupId>com.quartzdesk</groupId>   <artifactId>quartzdesk-api</artifactId>   <version>1.7.1</version>   <scope>runtime</scope> </dependency>

quartzdesk-web-1.7.1.war

File size:
37.31 Mb
MD5 Signature:
d459b3a9bc7fdba9c342712f12d04ea1
SHA1 Signature:
28e1b87543c81e148c8c0f37a7db8ff94b48ef59

QuartzDesk Web Application

Required by: All QuartzDesk editions
Please refer to the QuartzDesk Web Application Installation and Upgrade Guide for installation / upgrade instructions.

This artifact is also available in the Maven Central repository.