Resolved Issues

Server Build 9.0.1

Download PDF

Configured device timeouts did not get picked up properly

A change in the DCMKT toolkit required connection timeouts to be assigned earlier than they were. As a result, all but the first send request and all the receive requests used the built-in timeout value.

Users can forward or delete studies that aren’t on their access list

Some operations could be copied from the browser’s network panel and invoked from another browser by a user with different permissions, allowing users to perform unpermitted operations. The missing permission check has been applied.

MySQL escaping problem in Viewer's previous/next study

If the Institution Name value contains an apostrophe and the field is used in the filter criteria applied on the worklist, the open next/previous study command results in an exception due to an improperly formed query.

User's forward targets can be ignored

Some operations could be copied from the browser’s network panel and invoked from another browser by a user with different permissions, allowing users to perform unpermitted operations. The missing permission check has been applied.

Global restriction is ignored by Viewer's previous/next buttons

The system ignored global restrictions when selecting the next/previous study. If the user does not have permission to view the study selected, he/she ends up with an invalid study error.

Users can delete their own .access list

Some operations could be copied from the browser’s network panel and invoked from another browser by a user with different permissions, allowing users to perform unpermitted operations. The missing permission check has been applied.

The forward study process is misspelled in the epws.log

A typo existed in the term “ForwardStudy” in log file entries for a web services study forward event.

Page does not refresh after editing/creating DocType

Newly created document types failed to show up on the document type configuration page until after a browser page refresh.

Viewer log version information parsing wrong

The viewer version number in the uploaded viewer logs was incorrect because the data was taken from the wrong object.

Extra exception thrown by CacheStateToolbox

When a registered viewer device issues a cache state request to the server and the server does not have an explicitly defined prior study cache state setting, the parsing algorithm misinterprets the parsing results and registers an unnecessary exception in the log file.

Messaging recipients’ limits can be ignored

Some operations could be copied from the browser’s network panel and invoked from another browser by a user with different permissions, allowing users to perform unpermitted operations. The missing permission check has been applied.

User Account page not displayed for support user

The initial dotcom setup processed failed to include the server’s self ID setting in the default configuration file. As a result, the support account was not recognized.

AE title keeps reverting back to PBUILDER

A reorganization of the component start up scripts broke the setup of the default pb-scp configuration file, resulting in appending the wrong defaults to the end of the configured settings which were then taken as the configured value.

Curl doesn't exist where it should, actions can't run

Actions failed to run because the path used to identify the curl script used the removed custom component. The path has been updated to use the OS-supplied curl tools.

Persistent native database connections not reconnecting after timeout

The persistent database connections would not reconnect if the connection was lost or timed out, resulting in retried attempts to register objects, among other incomplete database requests.

Herelod daemons stop processing

When attempting to acquire and register large numbers of objects in a short period of time, herelod processes failed to terminate cleanly, waiting unnecessarily on the release of conditional variables, resulting in failed registration tasks and dropped objects.

Possible class/jar file missing

After upgrading java, an incompatible JAX-WS file caused all web services commands to fail. Upgraded JAX-WS to version 2.3.5.

Exportusers.sh won't function - java doesn't exist where it should

The location of java has moved but the path variable using in multiple scripts, including the user account import and export tools, still pointed to the former location.

Taskd crashes in jni in libmysqlclient.so during registration

Persistent and non-persistent database connections would release the SQL library object when terminating, invalidating the persistent connection and causing unstable behavior in other threads.

Default behavior in mysql 8 treats truncation as error

The updated version of MySQL, using the carry-over settings, treats truncation as an error as opposed to truncating the value automatically. The settings have been updated to default to the previous truncation behavior.

Cache blob creation task failing on a study with no image objects

A study with no cache or processed data directories, e.g., a study with just a PbR object, encountered an exception when preparing the meta data because of a failure to examine the return code value.

UserManager fails to run separately

If the user manager runs on an independent server, login attempts fail because the software was not properly prepared to pass data between discrete objects correctly.

Clear cache from Tech View doesn't update processing status

Clearing cache from the Technologist view page deleted the data but failed to update the internal processing state value because the feature to track processing status across multiple servers was not yet implemented.

Tech view's reprocess doesn't work on a server farm

Reindexing a study fails when the ingestion and application components run on separate servers because the application server has no registration abilities. The registration request is submitted to one of the registration servers.

Viewer gets the server name variable from server memory (quickfix)

The stream server the viewer uses to download the data is defined in the herpa data but the early v9 viewer does not use the value yet. Until this is available, the server will leave the setting empty if it determines the stream service and the web service are running on the same server, forcing the viewer to fall back on its assumption they are the same. Note this solution only works when running stream and web services on the same server. When the services are separated, an updated viewer is required.

Server Build 9.0.0

Download PDF

Static user login broken

Static user passwords failed to account for the updated hash format.

Change password throws an error

Updating the password hash format missed a few places, including the Change Password page.

SQLException during action run clears done table

Improper handling of a return code resulted in clearing the action history file when a database query encountered an anomaly or simply failed to complete.

Timestamp on note incorrect if time is 12:XX:XX

Parsing the date-time values in patient folder notes assumed a 12-hour clock rather than a 24-hour clock.

CWL does not allow merging a study to an order

Correcting a study to an order might fail because orders don’t have an owner hub, which is required to determine where the combined study resides. As a result, manual corrections from the GUI reported a failure to the user.

Late corrects don’t update data if the correcting device is not the study owner

A missing RMI call caused the server correcting a late-arriving order to a study to not update the study data with the order data if the correcting server was not the study owner.

Hermes java VM remains after ~/etc/rc stop

If the shutdown process encountered an exception, which could be legitimate depending on the timing/sequencing, it could exit before terminating hermes.

Cannot forward from patient folder

Back-end support for forwarding studies from the patient folder was incomplete, resulting in no action when the button was clicked.

Slow query log entries use ms instead of seconds

The query time reported in a slow query log entry was in seconds but tagged as being in milliseconds.

User with empty password cannot be edited

User accounts with empty passwords, which is not a valid state, could not be corrected because the missing password was not handled and caused an error when editing.

Task collapsing doesn't work for retry tasks

Duplicate tasks that weren’t collapsed were not returned to the duplicate task map, causing them to remain in the retry queue until executed. Under certain conditions, the retry queue could grow large with unnecessary duplicate tasks.

Handle non-dll filenames for plugins

While looking for plugin license files, the system failed to recognize plugins that were not distributed as DLL files.

Notify action error message

Identifying the email address offered as the default when configuring a Notify action failed for internally-defined accounts, such as the system account. In this case, the default comes up empty, requiring the user to explicitly declare the email recipient.

Tasks filter window allows user to go to another web page without closing

If the tasks page’s filter panel was open when the user called up a different web page, the filter panel was not closed and remained on the screen.

Session type changed on apache

Viewer sessions were not recognized after restarting Apache, causing the cached data fields (eg, Percent Loaded) to report no data until the user logged out and back in.

QueryQualifier doesn't properly handle PDOB quick filter

Searching a worklist using a date value in the quick filter field that would result in a query qualifier exception returned an error message and no data because the date filter was improperly encoded in the database search request.

CompressDataTask should not use static path

The compress data action used a static pathname to the study rather than using the repository’s location finder. If the study was moved from its original location, the compress action could not locate it and therefore failed to process the data.

Can't break stuck system lock from the worklist GUI

A system lock failed to be released because of a missing constructor. The constructor has been added to avoid the stuck lock. Also, when a user attempted to break the system lock, which is not permitted, the user received no explanation of why the lock remained. Now the user is informed he has no permissions to break a system lock.

Webviewer does not start if custom http port is used

When using a custom port to launch the web viewer, the server would mishandle parsing the URL to locate the host name, causing the request to fail.

Custom plugin doesn't work with new license

The plugin licensing enhancements failed to recognize custom plugin modules because the new naming rules were not applied correctly to custom plugin file names.

epws createUser broken when using PasswordOptions parameter

When using the web services command to create a user and including the password option tag but specifying no options, the request would fail because the server could not parse the empty string from the request.

Delete report with addendum

The delete button was not available from the patient folder if the study contained more than one report object (i.e., there was an addendum to the main report).