Qorus Integration Engine  3.0.4.p7
Qorus 2.6 Series

Table of Contents

back to Release Notes

Qorus 2.6.3.p42

Issues Fixed

Bug ID Severity Description Change
499 NORMAL omq.system.skip-step() and omq.system.skip-step-without-retry() cannot be called on unbound subworkflow steps with an ERROR status fixed in Qorus
498 NORMAL parent workflows with many subworkflows could make info service unusable fixed in Qorus
497 MAJOR a reference-counting error with step statuses in array steps can cause an infinite loop that can only be broken by killing qorus fixed in Qorus
496 MAJOR log() calls do not work properly when called from objects exported from services fixed in Qorus

Qorus 2.6.3.p41

Issues Fixed

Bug ID Severity Description Change
495 CRITICAL Qorus uses a non-standard way of implementing daemon-mode which could account for some strange behavior in the server fixed in Qorus
494 CRITICAL qore's STACK GUARD feature is broken in recent builds of qore on Linux used with recent releases of Qorus fixed in the qore library
493 CRITICAL in certain situations uninitialized type pointers can be used leading to a crash fixed in the qore library
492 CRITICAL the PO_REQUIRE_TYPES parse option is being incorrectly inherited when parsing user module code fixed in the qore library

Qorus 2.6.3.p40

New Features

  • get_call_context() added to the service API to get information about the calling context (workflow, service, or job)

Issues Fixed

Bug ID Severity Description Change
489 MINOR oload issues a confusing error when a function object is loaded with no explicit name and no valid function definitions fixed in oload

Qorus 2.6.3.p39

Issues Fixed

Bug ID Severity Description Change
488 CRITICAL if an error happens in the array function the first time the step is executed, then it will never be possible to execute the step fixed in Qorus

Qorus 2.6.3.p38

Issues Fixed

Bug ID Severity Description Change
487 CRITICAL cannot reschedule an order due to a bug in the fix for bug 478 fixed in Qorus

Qorus 2.6.3.p37

Issues Fixed

Bug ID Severity Description Change
486 CRITICAL qorus cannot recover an order with a gap in the segment list fixed in Qorus

Qorus 2.6.3.p36

New Features

  • integrated user modules from the xml, json, and yaml module packages

Issues Fixed

Bug ID Severity Description Change
485 NORMAL a segfault can result when Qorus exits if certain 3rd-party libraries have threads running and have exit handlers and the initial / main thread is killed fixed in the qore library
484 MAJOR if a job error instance cannot be written to the job_errors table due to a character encoding problem, then the job instance remains in status IN-PROGRESS fixed in the Qorus
483 CRITICAL an error in the embedded ocilib library causes a crash when an unknown or invalid collection is accessed a second time fixed in the oracle module
482 CRITICAL a crash will result if Datasource::execRaw() is called before the Datasource connection is opened fixed in the qore library
481 CRITICAL passing a reference to a class static variable to a function will cause a crash fixed in the qore library
480 NORMAL cannot delete a workflow if audit event references exist for the workflow's orders fixed in Qorus
479 NORMAL omq.system.group.create() does not accept any jobs due to an error in the lookup in the Qorus server code fixed in Qorus
478 MAJOR a race condition and lack of serialization in attaching to a workflow order with "NORMAL" mode workflow processing and omq.system.exec-synchronous-existing() can cause a "soft deadlock" in Qorus where the wf exec instance hangs until stopped manually fixed in Qorus
477 MINOR oload workflow validation does not show an error if a function DB object does not define the named function in its body fixed in oload

Qorus 2.6.3.p35

Issues Fixed

Bug ID Severity Description Change
476 CRITICAL segments may be marked COMPLETE before all their steps are COMPLETE due to a race condition with parallel steps in case one or more steps has not been started fixed in Qorus

Qorus 2.6.3.p34

Issues Fixed

Bug ID Severity Description Change
475 MINOR a race condition starting qorus and shutting down the JobManager can cause a spurious exception to be thrown fixed in Qorus
474 MAJOR race condition in shutting down and starting workflows can result in a spurious exception and a deadlock in the Qorus server fixed in Qorus
473 CRITICAL lack of serialization between stopping workflows, resetting workflows, and starting workflows results in race conditions that can affect stability of the Qorus server and can result in internal deadlocks fixed in Qorus
472 MAJOR RBAC security fails on users with a restricted access group list when shutting down workflows; no workflows can be stopped fixed in Qorus
471 NORMAL an exception in resetting the workflow cache can make workflow resets deadlock fixed in Qorus
470 CRITICAL a race condition managing the destruction of thread-local data when a Program object is deleted in conjunction with a thread terminating that has thread-local data in the Program object can cause a crash fixed in the qore library
469 MAJOR defining a recursive class inheritance tree can cause a crash at parse time fixed in the qore library
468 NORMAL cannot issue a retry for a workflow order with status ASYNC-WAITING when it is not cached fixed in Qorus
467 NORMAL issuing a workflow order retry when the workflow is not cached results in the regular retry delay being enforced fixed in Qorus
466 NORMAL the GuiHandler does not set the redirect location correctly when redirecting https connections fixed in Qorus
465 CRITICAL in regex substitution expressions, referencing a numbered source expression that does not exist will cause a crash fixed in the qore library

Qorus 2.6.3.p33

Issues Fixed

Bug ID Severity Description Change
464 CRITICAL inefficient STL map api calls cause very high CPU load when internal workflow queues grow large fixed in the qore library
463 CRITICAL if Datasource::setAutoCommit() or Datasource::open() is called when the transaction lock is held, it causes a memory error managing thread resources that could cause a crash fixed in the qore library
462 CRITICAL calling a pseudo-method on a typed lvalue that has been deleted or not yet assigned causes a crash fixed in the qore library
461 NORMAL the encoding given in the File::constructor() method is ignored fixed in the qore library
460 CRITICAL passing a reference to a local variable to a closure causes a crash when the variable is used in the closure in another thread fixed in the qore library
459 CRITICAL passing a typed reference to a local variable to a closure that tries to change the type in an incompatible assignment causes a crash fixed in the qore library
458 CRITICAL a memory error in optimized local variable handling will cause a crash if the delete operator is called on a local variable declared as type int or softint fixed in the qore library
457 CRITICAL there are memory errors assuming size_t and qore_size_t == 64 bits on 32 bit platforms that can cause crashes fixed in the qore library
456 CRITICAL an empty argument to the requires directive results in a crashing memory error fixed in the qore library

Qorus 2.6.3.p32

Issues Fixed

Bug ID Severity Description Change
455 MAJOR the usleep() and omqusleep() functions when passed a relative date/time value treat seconds as microseconds fixed in the qore library
454 CRITICAL workflow order queuing for READY workflows is artificially serialized such that only one running workflow execution instance at a time processes new orders fixed in Qorus

Qorus 2.6.3.p31

Issues Fixed

Bug ID Severity Description Change
453 CRITICAL a recursively-defined constant can cause a crash during parsing fixed in the qore library
452 NORMAL DUPLICATE-HASH-KEY parse warnings are sometimes given with the incorrect source location fixed in the qore library
451 MAJOR when defining a namespace, constants, classes, and functions are not resolved first in the namespace but rather with a global lookup fixed in the qore library
450 CRITICAL a crash can result if an exception occurs assigning a NULL value to a hash key fixed in the qore library
449 CRITICAL the date(string, string) function variant has an off-by-one bug when parsing integer month values fixed in the qore library
448 NORMAL oload can report failed workflow validations when executing workflow errorfunctions that try to access runtime functionality that's not available fixed in oload
447 MAJOR calling call_function() or call_function_args() with any imported function (such as workflow API functions) will cause a "PSEUDO-METHOD-DOES-NOT-EXIST" exception to be thrown fixed in the qore library

Qorus 2.6.3.p30

New Features

Issues Fixed

Bug ID Severity Description Change
446 MAJOR the workflow API function setOption() cannot be called with async_delay or recover_delay from the detach function or an exception will be thrown fixed in Qorus
445 CRITICAL a memory error handling nested try/catch statements could cause a crash when the rethrow statement is executed fixed in the qore library
444 MAJOR if API call auditing is enabled and the DB is down, the results of API calls are not reported, instead an exception message is returned fixed in Qorus
443 CRITICAL a workflow reset/shutdown/startup deadlock can result if database exceptions occur during workflow startup - this can lead to Qorus being unable to be shut down as well fixed in Qorus
442 MAJOR if a program tries to instantiate a class from a type that is not a class when declaring a new variable, a crash will result fixed in the qore library
441 MINOR fixed a parsing bug in the qore library that could cause extraneous error messages related to parsing to appear on the console fixed in the qore library
440 CRITICAL there is a reference count/memory leak in the softlist and *softlist types when given a single (not NOTHING) argument fixed in the qore library
439 MAJOR memory leaks in exception handling in oracle driver related to named type support fixed in the oracle module
438 NORMAL oload does not warn when multiple files define the same high-level object (such as a function, class, constant, workflow, service, or job) fixed in oload

Qorus 2.6.3.p29

Issues Fixed

Bug ID Severity Description Change
437 MINOR when matching special headers when looking for a custom global handler for an HTTP message, case is not ignored fixed in Qorus
436 MINOR the internal qore socket class needs to be updated to report more detailed error information when errors occur (such as SSL errors or errno errors) fixed in the qore library
435 ENHANCEMENT arch: a separate datasource is needed to prevent shared pool blocking fixed in the system.arch service
434 NORMAL arch: rebuild-indexes option needs to be used fixed in the system.arch service
433 CRITICAL job instance execution is serialized between all jobs - the execution of one job blocks the execution of all other job instances fixed in Qorus

Qorus 2.6.3.p28

Issues Fixed

Bug ID Severity Description Change
432 MAJOR cannot execute a synchronous workflow from a service method with a method lock or an exception will occur fixed in Qorus
431 MAJOR the oracle driver returns integers > 32bits with the wrong number when returned as a part of a collection or object fixed in the oracle module
430 MAJOR a race condition when calling the API function getRunningWorkflowList() when resetting workflows can cause a spurious exception fixed in Qorus
429 MAJOR a race condition resetting services can cause a spurious exception fixed in Qorus

Qorus 2.6.3.p27

Issues Fixed

Bug ID Severity Description Change
428 CRITICAL a memory error in qore function hextoint() could cause a crash fixed in the qore library
427 MAJOR the qore library silently truncates integers > maxint or integers < minint without warning fixed in the qore library
426 MAJOR the YAML module uses floating-point conversions for parsing integer numbers and therefore some precision is sometimes lost fixed in the yaml module
425 CRITICAL receiving an XML-RPC message with a non-UTF-8 encoding with the XMLRPCClient class will cause a crash fixed in the xml module
424 MINOR the XMLRPClient class does not set the request encoding properly when not using UTF-8 in the request header fixed in the xml module

Qorus 2.6.3.p26

Issues Fixed

Bug ID Severity Description Change
423 NORMAL Qorus' HTTP server assumes UTF-8 for connections missing a charset= specification, even though RFC 2616 sec 3.7.1 states that it must assume iso-8859-1 fixed in Qorus
422 MAJOR there is a deadlock in the ssh2 module's SFTPClient::disconnect() method fixed in the ssh2 module

Qorus 2.6.3.p25

Issues Fixed

Bug ID Severity Description Change
421 MAJOR the oracle driver is returning the same object for every element when a collection of objects is retrieved fixed in the oracle driver

Qorus 2.6.3.p24

Issues Fixed

Bug ID Severity Description Change
420 MAJOR retry-workflow-instance when executed on a cached workflow order with a fixed retry time will not immediately retry the workflow order; in fact it will have no effect fixed in Qorus

Qorus 2.6.3.p23

Issues Fixed

Bug ID Severity Description Change
419 MAJOR the qore library lacks parse-time checks for lvalues; giving a non-lvalue expression to an operator as an lvalue will cause a run-time crash fixed in the qore library

Qorus 2.6.3.p22

Issues Fixed

Bug ID Severity Description Change
418 MAJOR oload uses dynamic SQL which can cause memory problems when man objects are loaded into an oracle server fixed in oload
417 CRITICAL a bug in optimized lvalue handling for local variables with the – operator causes it to increment instead of decrement fixed in the qore library
416 MAJOR make-release uses the same temporary directory for all users and all instances which can lead to race conditions and incorrectly-prepared releases fixed in make-release
415 MAJOR Oracle driver: assign a number to oracle object's DATE attribute causes crash fixed in the oracle driver
414 CRITICAL a string evaluated in a boolean context will return false if it contains a floating-point number between 1 and -1 fixed in the qore library

Qorus 2.6.3.p21

Issues Fixed

Bug ID Severity Description Change
413 CRITICAL fixed retries can be delivered earlier than their trigger time when earlier async retry events are available on the same segment fixed in Qorus

Qorus 2.6.3.p20

Issues Fixed

Bug ID Severity Description Change
412 CRITICAL sending a reference to a local variable from a contained program to a parent program can cause a crash when the reference is assigned fixed in the qore library

Qorus 2.6.3.p19

Issues Fixed

Bug ID Severity Description Change
411 MAJOR when an error is raised in an asynchronous validation function giving a status of RETRY with a retry delay set, the status is not set as RETRY in the DB but rather ASYNC-WAITING fixed in Qorus

Qorus 2.6.3.p18

Issues Fixed

Bug ID Severity Description Change
410 MAJOR manually setting the retry delay after raising an error in a validation function results in the retry delay being ignored fixed in Qorus
409 MAJOR the serror() variant with a retry delay ignores the retry delay due to a bug in the qore library matching variants at parse time fixed in the qore library

Qorus 2.6.3.p17

New Features

  • oprop was updated to support command line commands:
    • "get": to display properties
    • "update": (also "set") to set properties

Issues Fixed

Bug ID Severity Description Change
408 CRITICAL recursive references when resolving constants can cause a crash in certain circumstances fixed in the qore library
407 CRITICAL the qore library does not calculate UTC offsets properly for dates before the epoch start but after the last DST transition before the epoch fixed in the qore library
406 NORMAL system.info.getOrderInfoFromKey() does not work due to a type error in the info service with pgsql and mysql (oracle is OK) fixed in the system.info service
405 MAJOR workflow execution instance options for async_delay and recover_delay are not respected after a workflow reset fixed in Qorus
404 NORMAL system API omq.system.rotate-log-files does not rotate job log files fixed in Qorus

Qorus 2.6.3.p16

New Features

  • expanded order keys
    Order key size has been increased to 240 bytes (from 80) and key value size to 4000 bytes (from 80). (Except MySQL backend)
  • enhanced info-snapshots for info service
    • JOB_INSTANCE is snapshotted too now.
    • new system API omq.system.schema.refresh-snapshots
  • make-release enhancements
    make-release now accepts the following new options:
    • –compress or -c: create a ".tar.bz2" archive of the release
    • –refresh or -r: include a command in the release file to refresh all loaded objects in the server automatically
    • –install or -i: execute the install.sh immediately to perform a local installation of the release just created (useful for testing)
    • –add-prefix=ARG or -P: set the directory name prefix for the package (ie -Puser = prepend "user" to the target release directory)
  • arch service enhancements

Issues Fixed

Bug ID Severity Description Change
402 MAJOR there is a logical error in archiving that causes archiving to fail on the JOBS table fixed in the system.arch service
401 NORMAL the user install.sh script does not pass command-line arguments on to oload as designed fixed in the install.sh template
400 NORMAL ocmd does not handle list arguments correctly when converting from a string with commas fixed in ocmd
399 CRITICAL passing an irregular hash (with elements beyond the first that are not lists) to the context statement will cause a crash fixed in the Qore library
398 MAJOR if an exception is thrown in a service that has no description, a system exception is raised due to a type error fixed in Qorus
397 MAJOR a bug in job session recovery causes archiving to fail due to the session ID not being cleared from recovered job instances fixed in Qorus

Qorus 2.6.3.p15

Issues Fixed

Bug ID Severity Description Change
396 MAJOR qorus cannot recover from corrupted workflow orders when an asynchronous step is not COMPLETE but the backend segment instance entry exists fixed in Qorus
395 NORMAL oload cannot handle schema paths with spaces fixed in oload
394 NORMAL schema-tool cannot handle filenames with colons in the name (:) fixed in schema-tool
393 NORMAL when an error occurs resetting a service, a bug in Qorus prohibits the error message from being logged, and further service resets are not performed fixed in Qorus

Qorus 2.6.3.p14

Issues Fixed

Bug ID Severity Description Change
391 NORMAL oracle driver: OUT binding for Type::Date does not work with NULLs fixed in the oracle driver
390 NORMAL data types that can change the values accepted (ex: softdate, softlist, etc) do not change the values when a default value is given in the parameter list, leading to a variable assigned with an incorrect value type fixed in the Qore library

Qorus 2.6.3.p13

Issues Fixed

Bug ID Severity Description Change
389 MAJOR cannot unblock a workflow with a scheduled date on oracle fixed in Qorus
388 NORMAL cannot activate inactively loaded job fixed in Qorus
387 MAJOR if a group has a NULL description, Qorus cannot be started fixed in Qorus

Qorus 2.6.3.p12

Issues Fixed

Bug ID Severity Description Change
386 CRITICAL cannot recover async steps when queue data exists on oracle fixed in Qorus
385 NORMAL service binding to the global HTTP listeners does not work fixed in Qorus
384 MAJOR trying to log() from an HTTP handler causes an exception to be thrown fixed in Qorus

Qorus 2.6.3.p11

Issues Fixed

Bug ID Severity Description Change
381 MAJOR bug in the xml module causes valid XML-RPC to fail to be parsed fixed in the xml module

Qorus 2.6.3.p10

Issues Fixed

Bug ID Severity Description Change
381 MAJOR bug in the xml module causes valid XML-RPC to fail to be parsed fixed in the xml module

Qorus 2.6.3.p9

Issues Fixed

Bug ID Severity Description Change
383 MAJOR runtime method variant matching was broken with class hierarchies, in certain circumstances a base class method variant was being called when a subclass method variant should have been called fixed in Qore
382 CRITICAL workflow initialization fails when workflow synchronization events are available in the database (for non-complete or canceled steps) fixed in Qorus
381 MAJOR bug in the xml module causes valid XML-RPC to fail to be parsed fixed in the xml module

Qorus 2.6.3.p8

Issues Fixed

Bug ID Severity Description Change
380 CRITICAL an unsafe access to a data structure that can only be accessed under a mutual-exclusion lock can cause a crash on all platforms fixed in Qore

Qorus 2.6.3.p7

Issues Fixed

Bug ID Severity Description Change
379 CRITICAL SIGALRM cannot be blocked on solaris 8 or 9 or *sleep() will not work reliably fixed in Qore
378 MINOR the omq.system.group.create() api fails with a bad error message with incorrect arguments fixed in Qorus
376 NORMAL oview -f not showing BLOCKED column values fixed in oview
375 MINOR ORA-00932: inconsistent datatypes: expected NUMBER got TIMESTAMP encountered with info.getWorkflowOverview() on Oracle < 9.2.0.3 - also affects oview fixed in the system.info service

Qorus 2.6.3.p6

Issues Fixed

Bug ID Severity Description Change
374 CRITICAL the Qorus HTTP server should close connections made my HTTP 1.0 clients by default unless the Connection: Keep-Alive header is present fixed in Qorus
373 MINOR warnings not issued for missing recommended tags in oload fixed in oload
372 NORMAL calling bindSubWorkflow() in a synchronous workflow without the "version" key causes an error to be thrown fixed in Qorus
371 MAJOR the synchronous flag is not reset when the final workflow status is written to the database when processing synchronous workflows fixed in Qorus
370 NORMAL oload does not accept the job tag "duration: " as a synonym for "recurring: " fixed in oload

Qorus 2.6.3.p5

Issues Fixed

Bug ID Severity Description Change
369 MAJOR job loading fails to load the "active", "run-skipped", and "single-instance" flag correctly fixed in oload

Qorus 2.6.3.p4

Issues Fixed

Bug ID Severity Description Change
368 CRITICAL calling omq.system.job.run*() causes qorus to crash immediately fixed in the qore library

Qorus 2.6.3.p3

New Features

  • Loosely-Coupled Workflow Orders
    Whenever a workflow order is created by using the createOrder() function when called from workflow code, the workflow created will be marked with the calling order as its parent; this parent-child relationship will be reflected in the API (and therefore command-line tools and the GUI), but no workflow status propagation is enforced.

    The parent workflow instance ID can also be set manually; just include a "parent_workflow_instanceid" key in the order hash set to the correct workflow instance ID of the parent.

    To avoid this behavior and ensure that workflow orders created do not have a loose coupling to the caller; set the "parent_workflow_instanceid" to False instead.

    This new feature affects the following APIs:
    See the documentation for the above APIs for more information.

Issues Fixed

Bug ID Severity Description Change
367 NORMAL a "STATUS-ERROR" exception could be thrown causing workflow cache corruption if workflows are reset during synchronous workflow execution fixed in Qorus
366 MAJOR if the attach function raises an error in synchronous workflow processing, the synchronous workflow execution instance does not stop automatically fixed in Qorus
365 NORMAL omq.system.job.list-active() only returns one job and the top-level key is an empty string fixed in Qorus
364 CRITICAL memory errors merging events from synchronous workflows into shared workflow queues cause qorus to crash after all memory is exhausted fixed in Qorus
363 NORMAL schema-tool recoveries will fail if multiple schema files need to be loaded and the first file must be executed with an offset fixed in schema-tool
362 MAJOR synchronous workflows cannot create subworkflows due to a type error in the SegmentManager implementation fixed in Qorus

Qorus 2.6.3.p2

New Features

Issues Fixed

Bug ID Severity Description Change
361 MINOR fixed a crash when referencing closure-bound local variables in expressions with the background operator; this bug cannot affect Qorus user code fixed in the Qore library
360 MAJOR SoapClient will not respect the encoding set when creating XML strings fixed in Qorus and in the client library
359 MINOR omq.system.delete-profile fails with referential integrity constraint fixed in Qorus

Qorus 2.6.3.p1

Issues Fixed

Bug ID Severity Description Change
358 CRITICAL oload sets implicit method names with the last function name in the block instead of the first fixed in oload

Qorus 2.6.3

New Features

  • Workflow Instance Status Snapshot
    Qorus now supports Workflow and Job Instance Snapshots to improve the performance of workflow order summary queries for Qorus installations with very large numbers of workflows in the online schema.
    Note
    When upgrading an Oracle schema, the schema owner must have the "create any snapshot" role or the schema upgrade will fail. To grant this role to the schema owner, have a user with dba privileges execute the following: "grant create any snapshot to omq", where omq is the name of the schema owner.
  • ostatus Change
    ostatus now shows active jobs with the -v or -j options

Issues Fixed

Bug ID Severity Description Change
353 MAJOR (reopened) all info service methods taking a condition string implement too-aggressive checking fixed in the system.info service

Qorus 2.6.2.p8

Issues Fixed

Bug ID Severity Description Change
356 MAJOR if an order has a hash with a zero-length string in dynamic or static data, then the order cannot be sent over the XML-RPC interface and therefore cannot be seen in the GUI fixed in the xml module
355 CRITICAL oload cannot match function names if additional whitespace is included after the name fixed in oload
354 CRITICAL a bug in managing reference cycles in closures assigned to constant containers causes a crash fixed in the qore library

Qorus 2.6.2.p7

Issues Fixed

Bug ID Severity Description Change
353 MAJOR all info service methods taking a condition string implement too-aggressive checking fixed in the system.info service
352 CRITICAL REOPENED: race condition in handling thread-local stack tracking can cause a crash - finally fixed in this patch fixed in the qore library

Qorus 2.6.2.p6

Issues Fixed

Bug ID Severity Description Change
352 CRITICAL race condition in handling thread-local stack tracking can cause a crash fixed in the qore library

Qorus 2.6.2.p5

Issues Fixed

Bug ID Severity Description Change
351 MAJOR not possible to set order keys with network API omq.system.exec-synchronous-workflow() fixed in Qorus
350 MAJOR setting order keys with a key with a list of values while creating a workflow instance fails with an exception fixed in Qorus
349 MAJOR oload does not issue warnings when loading services and only partially when loading workflows and jobs fixed in oload
348 MAJOR the system() function fails if the argument contains backslashes or double quotes fixed in the qore library
347 CRITICAL a memory bug in adding undefined classes as a base class to a derived class can cause a crash fixed in the qore library
346 MINOR the "# END" tag line is included in the service method body in the DB fixed in oload
345 CRITICAL the system.info service is missing the getWFIErrorInstances() method fixed in the system.info service
344 MAJOR the YAML module does not always generate an error when there is an error parsing the document; instead it returns NOTHING without any exception fixed in the yaml module
343 MAJOR the registerSoapService() service API function does not work fixed in Qorus
342 CRITICAL parsing the following XML causes a crash on Solaris 8: qore -lxml -X 'parseXML("<AAA>aaa&aaa</AAA>")' fixed in the libxml2 build on Solaris 8 sparc

Qorus 2.6.2.p4

Issues Fixed

Bug ID Severity Description Change
341 CRITICAL a memory bug in searching for class constants when recursively searching namespaces can cause a crash fixed in the qore library
340 MAJOR system apis: omq.system.job.schedule() and omq.system.job.schedule-id() update the schedule fields incorrectly in the database fixed in Qorus
339 MAJOR oload deletes all queue data from all workflows when deleting workflow instances for any workflow fixed in oload
338 MINOR inserting job errors without a job instance id causes a system exception fixed in Qorus
337 MINOR deleting jobs fails with oload if any job instances exist fixed in oload

Qorus 2.6.2.p3

Issues Fixed

Bug ID Severity Description Change
335 MAJOR oload is stripping whitespace from the beginning of each line of code fixed in oload
334 NORMAL info service methods info.getJobMetadata() and info.getJobMetadataFromName() both return the library objects in a non-standard format fixed in the system.info service
333 MAJOR job validation is not run in oload fixed in oload
332 MAJOR when "workflow-data" auditing is enabled, system schema recoveries fail fixed in Qorus
331 CRITICAL the ssh2 module was broken on the Solaris 10 Sparc build fix in Solaris 10 Sparc build
330 MAJOR oload does not recognize "# END" tags if there is additional text after the "# END" fixed in oload
329 MAJOR workflow instance data is not cleared when a workflow is reset fixed in Qorus
328 MINOR audit events for job instances and workflow instances are returned in random order fixed in Qorus

Qorus 2.6.2.p2

Changes

  • Updated Job Info APIs Both of the above APIs have been updated to return information about inactive jobs as well as active jobs; an additional key ("active") has been added to each job hash to differentiate active and inactive jobs.
  • schema-tool Updates
    schema-tool has been updated to make it easier to add and maintain the archive schema, also schema-tool -v now outpus the archiving schema status as well as the primary system schema status.

Issues Fixed

Bug ID Severity Description Change
327 NORMAL oload does not load jobs properly; months, days, hours, and minutes are not loaded correctly the first time; they are only correct when updating an existing job fixed in oload
326 NORMAL cannot delete jobs when the job is a member of an RBAC group fixed in oload
325 NORMAL missing "single-instance" or "run-skipped" values in job definition cause job load to fail fixed in oload
324 NORMAL omqsleep() does not return immediately when a service or workflow is shut down fixed in Qorus
323 NORMAL calling SQLStatement::rollback() or SQLStatement::commit() without an active statement causes an exception fixed in the Qore library
322 MINOR the "author" tag is not reported with many API calls; the "author" tag is not set on steps fixed in Qorus and in oload
321 MINOR bug in oload made it impossible to delete jobs, job instances, or queues fixed in oload
320 NORMAL oload cannot delete services, workflows, or jobs if audit events exist for the object fixed in oload
319 MINOR the "serviceauthor" tag is ignored when loading services by oload fixed in oload

Qorus 2.6.2.p1

Issues Fixed

Bug ID Severity Description Change
318 CRITICAL if the "define-group" tag appears more than once in job and service definitions an error is raised fixed in oload
317 MAJOR srand() no longer available in service API fixed in Qorus

Qorus 2.6.2

New Features

Issues Fixed

Bug ID Severity Description Change
316 NORMAL oload does not report the correct line number when validating services because it loads in comments that are a part of the service metadata into the first method fixed in oload
315 NORMAL declaring a local variable with the same name as a global thread-local variable results in a warning when "duplicate-local-vars" is enabled (as in, for example, oload) fixed in Qorus ("duplicate-local-vars" no longer included in warning mask)
314 CRITICAL workflow and job loading with library objects can fail due to type errors with imported variables in the qore library fixed in oload
313 CRITICAL fixed 2 crashing bugs with memory errors handling parse exceptions in regular expressions fixed in the qore library
312 NORMAL installation fails if the options file does not exist or is empty fixed in the Qorus client library
311 MAJOR system() does not recognize '=' or '$' as shell meta-characters, causing any commands with these characters to be interpreted literally and therefore the command fails fixed in the qore library
310 CRITICAL system() causes a deadlock in both child and parent processes if launching the child process launch fails fixed in the qore library
309 MAJOR parse exceptions in switch statements can cause a deadlock (endless loop) fixed in the qore library
308 NORMAL the client library issues warnings when included with enable-all-warnings fixed in the Qorus client library
307 MAJOR the schema upgrade from 2.6.0.1 to 2.6.0.2 updates the modified date on workflow_instance to the current date because the trigger is not disabled before updating the priority column fixed in the 2.6.0.1 - 2.6.0.2 schema upgrade scripts
306 NORMAL the install script fails when $OMQ_DIR has a path with spaces in it fixed in the install script
305 NORMAL the install script fails when called from a path with spaces in it fixed in the install script

Qorus 2.6.1.p6

Issues Fixed

Bug ID Severity Description Change
304 NORMAL a race condition in getting internal cache info called by the info.getWorkflowStatus2() method can cause the method call to fail fixed in Qorus
303 MAJOR a bug in shutting down FTP listeners can cause a deadlock prohibiting services using FTP bindings from stopping fixed in Qorus
302 CRITICAL omq.system.skip-step() does not always cause the step to be skipped fixed in Qorus

Qorus 2.6.1.p5

Issues Fixed

Bug ID Severity Description Change
301 CRITICAL memory errors in certain socket functions (including Socket::getPort()) can cause a crash fixed in qore library

Qorus 2.6.1.p4

New Features

Issues Fixed

Bug ID Severity Description Change
294 MAJOR status.skipStep() fails fixed in the system.status service
295 MAJOR status.cancelWorkflow() fails fixed in the system.status service
296 MAJOR status.setError() fails fixed in the system.status service
297 MAJOR omq.system.skip-step() and omq.system.skip-step-without-retry() fail on postgresql fixed in Qorus
298 MAJOR omq.system.skip-step() does not update the DB if the workflow order is cached, so later it cannot be seen that this step was skipped, also if a retry is not made before the workflow is stopped, the skipped flag is not written to the database fixed in Qorus
299 NORMAL make-release does not support ".qjob" as a recognized file extension when making releases fixed in make-release
300 NORMAL info.getWorkflowInstances() does not return any results for status OMQ::StatEventWaiting fixed in the system.info service

Qorus 2.6.1.p3

New Features

  • oload supports option -v with -L to show the last modified date of the objects listed

Issues Fixed

Bug ID Severity Description Change
293 NORMAL the is_readable() function always returns True fixed in the qore library
292 CRITICAL oload fails validation for services where a constant is defined in the service but referenced in a library object fixed in oload
291 CRITICAL parse options that allow further restricting the parse environment cause errors to be generated fixed in Qorus and in the qore library

Qorus 2.6.1.p2

Issues Fixed

Bug ID Severity Description Change
290 CRITICAL cannot unblock or uncancel workflow orders on Oracle when the original status is anything other than READY or SCHEDULED and the workflow is cached fixed in Qorus
289 CRITICAL workflows can be released with status 'Y' after being canceled or blocked if flush-status is on; if flush-status is off, then incorrect log messages appear - note that this issue is MINOR if flush-status is off fixed in Qorus
288 CRITICAL getWorkflowInstanceData() fails on the "priority", "started", and "external_instanceid" fields in the detach function fixed in Qorus
287 CRITICAL detach function is not run when blocking or canceling a workflow fixed in Qorus
286 CRITICAL oload does not validate services at all and throws a bogus error if the service has any library objects fixed in oload
285 MINOR the HTTP server does not save the username in the calling context on second and subsequent requests when multiple requests are issued through the same connection fixed in Qorus
284 MINOR HTTP server's authentication by IP feature does not check for LOGIN role fixed in Qorus
283 MINOR default HTTP status handler does not check rbac access lists fixed in Qorus

Qorus 2.6.1.p1

Issues Fixed

Bug ID Severity Description Change
282 MINOR appropriate error messages are not displayed with oracle when references to invalid workflow orders are made; applies to various API calls fixed in Qorus
281 MAJOR if a workflow attach fails, then the workflow execution instance can stop due to an error handling thread-local data fixed in Qorus
280 CRITICAL canceled or blocked workflows for cached workflows cannot be unblocked/uncanceled if they have a detach function fixed in Qorus
279 CRITICAL cannot unblock workflow order without a "scheduled" date fixed in Qorus
278 CRITICAL creating an order with BLOCKED status does not work fixed in Qorus
277 MINOR ipv6 addresses are not always parsed correctly with parse_url() fixed in the qore library
276 NORMAL schema-tool does not check if the system is down before applying schema changes to the Qorus system schema fixed in schema-tool

Qorus 2.6.1

Release Overview

Qorus 2.6.1 is a major release over the Qorus 2.6.0 branch, bringing major new features to the Qorus platform. It is based on the Qore 0.8.2 library, which contains major new features over previous versions of Qore as well.

Upgrading from pre 2.0.0 involves a major update to the system schema that could break compatibility with any code accessing the Qorus system schema directly; if upgrading from any version prior to 2.0.0, see System Schema Data Model 2.0.0 Changes for more information. The changes in schema all version from 2.0.0 to this version are relatively minor compared to upgrading from a version prior to 2.0.0.

Note
Before upgrading to version 2.6.1, make sure to make a complete backup of the Qorus system schema, additionally, make sure enough space is available in rollback segments so that the schema migration can complete successfully.

Any previous version of Qorus Integration Engine can be upgraded directly and automatically by this release. When upgrading from any previous version, the system schema is changed, so Qorus must be shut down before upgrading to version 2.6.1.

Issues Fixed

Bug ID Severity Description Change
275 MAJOR an error managing thread-local data can cause events and log messages to be directed to the wrong workflow when an active workflow with a detach function is stopped and the workflow is a subworkflow fixed in Qorus
274 NORMAL FTP messages are not logged to the service log file after calling bind_ftp() fixed in Qorus
271 NORMAL cannot shut down qorus cleanly when an FTP connection is in progress fixed in Qorus
270 NORMAL race condition shutting down the HTTP server can cause a spurious error message to be displayed when shutting down fixed in Qorus
268 NORMAL oload does not reset services correctly on load fixed in oload
267 NORMAL the omqmap cache can have conflicting information about services; when services are updated through the api, omqmap is not updated fixed in Qorus
266 NORMAL Service "verbose" setting is ignored in log() in services fixed in Qorus

New Features

System Schema Data Model 2.6.1 Changes

  • New Tables
    • JOBS
    • JOB_INSTANCE
    • JOB_ERRORS
    • JOB_LIB
    • GROUP_JOBS

The DESCRIPTION columns of all tables storing user-defined objects were updated to allow for longer descriptions (up to 4000 bytes).

Qorus 2.6.0.p9

Issues Fixed

Bug ID Severity Description Change
272 CRITICAL crash due to assert() detecting race condition managing internal segment reference counts related to asynchronous message processing for array steps fixed in Qorus

Qorus 2.6.0.p8

Issues Fixed

Bug ID Severity Description Change
273 CRITICAL memory leak in qore remove operator fixed in qore library
269 CRITICAL race condition calling exit() can cause a crash fixed in qore library

Qorus 2.6.0.p7

Issues Fixed

Bug ID Severity Description Change
265 CRITICAL omq.system.skip-step() fails when called on an asynchronous step fixed in Qorus
264 CRITICAL case expressions are not initialized properly at parse time, particularly if they require run-time evaluation fixed in the qore library
263 CRITICAL there are memory errors when merging exception information for errors thrown when evaluating code at parse time when merging into the run-time exception sink fixed in the qore library

Qorus 2.6.0.p6

Issues Fixed

Bug ID Severity Description Change
262 CRITICAL The Datasource class can discard transaction state when an automatic reconnect is made after the first call to Datasource::exec() when the transaction lock is implicitly acquired fixed in the qore library
261 CRITICAL SQLStatement class can silently discard transaction state when a connection disappears fixed in the qore library

Qorus 2.6.0.p5

Issues Fixed

Bug ID Severity Description Change
259 MAJOR bug in oview: when listing workflow instance data without -v, the call to omq.system.service.info.getWorkflowInstances() is made with incorrect parameters fixed in oview

Qorus 2.6.0.p4

Issues Fixed

Bug ID Severity Description Change
258 CRITICAL services can be unloaded while calls are in progress fixed in Qorus
257 CRITICAL deadlock in SFTPClient class in ssh2 module fixed in the ssh2 module
256 NORMAL oload does not process load files prefixed by '@' correctly (i.e. "oload @<file>") fixed in oload

Qorus 2.6.0.p3

Issues Fixed

Bug ID Severity Description Change
255 CRITICAL a deadlock can occur when an object is dereferenced through more than one of its keys fixed in the qore library
254 MAJOR the system APIs omq.system.skip-step-without-retry() and omq.system.skip-step() fail when RBAC security is enabled fixed in Qorus

Qorus 2.6.0.p2

Issues Fixed

Bug ID Severity Description Change
253 CRITICAL bug in date() function with mask - if no characters are available when the mask is parsed, then a crash occurs fixed in the qore library

Qorus 2.6.0.p1

Issues Fixed

Bug ID Severity Description Change
252 CRITICAL getWorkflowInstanceData() throws an exception instead of returning all data when called with no arguments fixed in Qorus

Qorus 2.6.0

Release Overview

Qorus 2.6.0 is a major release over the Qorus 2.5.0 branch, bringing major new features to the Qorus platform. It is based on the Qore 0.8.1 library, which contains major new features over previous versions of Qore as well.

Upgrading from pre 2.0.0 involves a major update to the system schema that could break compatibility with any code accessing the Qorus system schema directly; if upgrading from any version prior to 2.0.0, see System Schema Data Model 2.0.0 Changes for more information. The changes in schema all version from 2.0.0 to this version are minor compared to upgrading from a version prior to 2.0.0.

Note
Before upgrading to version 2.6.0, make sure to make a complete backup of the Qorus system schema, additionally, make sure enough space is available in rollback segments so that the schema migration can complete successfully.

Any previous version of Qorus Integration Engine can be upgraded directly and automatically by this release. When upgrading from any previous version, the system schema is changed, so Qorus must be shut down before upgrading to version 2.6.0.

Issues Fixed

Bug ID Severity Description Change
251 MAJOR auto-reconnect fails when Datasource::beginTransaction() is called on a DatasourcePool where the connection is already down fixed in qore and in oracle driver
250 MAJOR Socket::recv() and Socket::recvBinary() can both throw an exception when the socket is closed after all data is sent fixed in qore lib
249 MINOR an invalid response from an FTP server can cause the FtpClient class to crash the qore process fixed in qore lib

New Features

System Schema Data Model 2.6.0 Changes

  • New Tables
    • WORKFLOW_EVENT_TYPES
    • WORKFLOW_EVENTS
    • STEP_INSTANCE_EVENTS
    • GROUPS
    • GROUP_SERVICES
    • GROUP_WORKFLOWS
    • PROFILE_GROUP_ACCESS
    • USER_GROUP_ACCESS
  • New Columns
    • workflow_instance.scheduled
    • workflow_instance.priority
    • workflow_lib.load_order
    • service_lib.load_order

The SYSTEM_PROPERTIES table was updated to allow for larger keys (up to 240 bytes) and larger values (up to 4000 bytes); non-string values are now stored in YAML encoding; meaning that it's possible to store complex data structures now and maintain data types.

The internal API for Oracle and PostgreSQL has been updated to reflect the new schema changes; additionally the Oracle API has been extended and optimized to improve performance and scalability

See also
Qorus 2.5 Series