Skip to main content

24.07

๐Ÿš€ Highlightsโ€‹

  • Memory Footprint: Revision of all memory-intensive components to resolve issues related to performance and memory usage.
  • In-Memory Indexing: Introduced IndexService for efficient in-memory asset registration. It addresses a design choice made to prioritize high performance when fallback images are used extensively.
  • Faster Encoding: up to 30% for WebP, 50% for JPEG and for 100% PNG (for specific access patterns and resolutions)
  • Faster Scanner: Improved performance of path traversal checks by min. 20% for large datasets

Securityโ€‹

  • Updated Log4j to 2.26.1
  • The Tomcat APR/Native Connector has been removed in favor of a pure Java connector
  • CVE-2025-31650 Denial of Service Due to a Memory Leak Caused by Invalid HTTP Priority Headers)
  • CVE-2024-23672 (Denial of Service due to incomplete clean-up of WebSocket connections)
  • CVE-2023-46589, CVE-2023-45648 (Request smuggling caused by incorrect parsing of HTTP trailer headers)

Fixedโ€‹

  • Consistency issues encountered when importing and updating directory entries have been resolved
  • Significantly improved internal handling of service errors
  • fsi/service/health is more precise and the HEALTHCHECK in the container works more accurately
  • Hanging threads during shutdown have been fixed
  • Negative counter in System Monitor fixed
  • Possible User Session Overflow fixed

โœจ Addedโ€‹

  • Added storage.jsonl log file to monitoring changes in sources
  • Update search engine support to Apache Solr 10

๐Ÿ›  Changedโ€‹

  • JVM: Reduced default RAM allocation
  • Many memory-intensive operations have been optimised
    • In response, an in-memory indexing system was introduced, which statically registers each asset. This improves performance when dealing with large numbers of assets and enables fast queries. This index requires approximately 300MB of RAM per million assets.
    • On Linux, you need to adjust the user_watcher_max system settings
  • Scanner: Intervals can be set
  • Improved support for video byte ranges
  • Access to static directories has been changed to status 403 instead of returning an empty response
  • Renderer: Optimized header handling and much faster response of 404 for non-existing assets

๐Ÿงน Removedโ€‹

  • SSL certificate support in Tomcat has been removed
  • Blake3 storage hashing
  • Compression for static files removed

22.12

Important Security Bug-fix Release

Severity: Moderate

Several JDK CVE CVE-2023-0482 (Fixed in Resteasy 4.7.8) CVE-2023-0482 (Fixed in Resteasy 4.7.8)

Server health serviceโ€‹

  • The internal health service, accessible at /fsi/service/healthcheck, now uses much more internal checks to determine the overall health of the server.
  • The container healthcheck was adapted according to the changes and now triggers a restart of the container more quickly.

Rename and metadataโ€‹

Fixed an issue with extra metadata added via the API not being moved in case of renaming or moving the source data.

Exit on start-upโ€‹

Fixed a server exit at startup when the server was started with an incomplete storage.

Archive supportโ€‹

The unpacking of archives (TAR, BZ2) has been accelerated.

Static file responses for video filesโ€‹

When delivering video files in particular, the byte-range support has been changed. . For the video container formats mov, m4v und mp4, only the first chunk is delivered for requests with range headers. This massively reduces the traffic for video playback.

Bug if Apache Solr was disabledโ€‹

If Apache Solr was disabled as the search database, an exception could occur when deleting directories. This problem has been fixed.

Storage import orderโ€‹

The internal job queue that determines when images are converted for the storage has been completely re-implemented. As a result, queue processing is significantly accelerated when API uploads and file system changes occur simultaneously. The RAM memory requirements have also been significantly reduced.

WebP encoderโ€‹

A new WebP encoder based on libwebp 1.3.0 was implemented. The following encoder parameters are deprecated:

info Parameter deprectation
  • snsStrength
  • filterSharpness
  • filterStrength
  • preProcessing
  • multiThreads

Log output when the server is stoppedโ€‹

Log output for the ListBuffer indicating an error when the server was terminated has been removed. This was not an error.

Uniform time specifications for loggingโ€‹

The output of dates and time ranges has been unified in all log outputs and are now human-readable.

Storage Performanceโ€‹

If many files in many directories are changed, then the speed to mirroring the directory structure in storage is now much better.

Directory Cacheโ€‹

The internal cache for the directory structure is now more limited based on the available RAM memory.

Fallback Imagesโ€‹

Rendered fallback images did not have a cache-control header under certain circumstances. This problem has now been fixed.

FSI Layersโ€‹

It's now possible to also use regular HTML content (e.g. text or videos) in FSI Layers

added parameters:

  • contentInBackground - defines if content is set in background

changed API functions:

  • addGroup(strParentGroupName, oParameters, (index or layer name))
  • addLayer(strParentGroupName, oParameters, (index or layer name), (HTML content))
  • move(layerName, targetGroup, (target index or layer name))

22.09

Critical Security Bug-fix Release

Severity: High

CVE-2021-43980 (fixed in Tomcat 9.0.62) CVE-2021-44832 (fixed in log4j2 2.17.1) Several JDK CVE Increased Salt Bits for login digest method

Bump to Java 17 LTSโ€‹

This version uses Java 17. Parts of the source code have been updated according to the possibilities of Java 17. Slight performance advantages could be measured in internal benchmarks.

Error if histogram generation is disabledโ€‹

Conversion errors could occur if histogram creation was disabled or could not be performed.

Fix disk usage performance and sizing bugโ€‹

The display of the capacity of the disk for storage was incorrect and has been fixed. The speed at which this was determined has been significantly improved.

Added some additional image formatsโ€‹

We have expanded the number of supported source image formats and from this version we support the following formats:

info
  • JPEG - Joint Photographic Experts Group
  • TIFF - Tag Image File Format
  • GIF - Graphics Interchange Format
  • PNG - Portable Network Graphics
  • PSD - Photoshop document
  • WEBP - Google WebP Format
  • BMP - Bitmap File Format
  • FPX - FlashPix
  • PBM - Portable Anymap
  • PICT - macOS image format
  • PCX - Picture exchange
  • IFF - Interchange File Format
  • HDR - Radiance High Dynamic Range RGBE Format
  • TGA - Truevision TARGA
  • SGI - Silicon Graphics Image Format

Image type recognitionโ€‹

Recognition for certain image formats has been revised and accelerated. Especially the initial scan after a reboot benefits from this improvement.

Directory imagesโ€‹

Fixed a problem with very small images in the Web Interface view of directories.

Fix Alpha-Channel bugโ€‹

For images without ICC color profile, the transparency channel could be rendered incorrectly. This occurred especially with PNG images with linear RGB ICC.

21.12

Critical Security Bug-fix Release

Severity: High

CVE-2021-44228 (Log4Shell - fixed in 2.15.0)

This release only fixes the Log4Shell security issue.

21.11

Important Security Bug-fix Release

Severity: High

CVE-2021-44228 (Tomcat - fixed in 9.0.54)

Two-factor authentication (2FA)โ€‹

Since this release, users can activate a TOTP (Time-based One-time Password algorithm) factor to their password. The 2FA factor complies with RFC 6238 and can be used with the usual programmes for this purpose, e.g. Google Authenticator, KeePassXC, Botan, iOS 15, etc.

Refresh JPEG Encoderโ€‹

Use of a new JPEG encoder that slightly improves encoder performance.

SwitchUser APIโ€‹

The API for changing the user via the web interface has been completely re-implemented. However, the API requests themselves do not change.

Fallback Redirects bugโ€‹

Fix bugs with static redirected fallback images.

PNG Format bugfixโ€‹

Fix wrong colors with some PNG images in rare Channel/ICC combinations.

Import Queue improvedโ€‹

Reduce used memory per importer job and increased job queue. As a result, the storage is filled more evenly.

FSI Pagesโ€‹

added parameters:

  • flipCornerSize - Defines the size of the draggable corner of each page
  • flipEdgeSize - Defines the size of the draggable edge of each page

21.05

Important Security Bug-fix Release

Severity: High

CVE-2021-30639 (Tomcat - fixed in 9.0.45) CVE-2021-41079 (Tomcat - fixed in 9.0.44) CVE-2021-25122 (Tomcat - fixed in 9.0.43)

Fix possible expire problem with new licensesโ€‹

Fixed an issue that could cause the licence to expire prematurely. This only applied to time limited licences.

Update CORS filterโ€‹

The handling of CORS requests has been reimplemented. Fixed wildcard origins bugs.

Reduce log level for invalid effectsโ€‹

Too many irrelevant log outputs were logged for invalid effect requests. The log outputs have been adjusted.

Fix WebP problemsโ€‹

Excessive memory consumption with very large WebP encodings has been fixed.

Fix problem with slow uploadsโ€‹

Fixed a bug that prevented images that uploaded very slowly from being imported.

Static Request Settingsโ€‹

Support for the size of the chuck in byte range requests for static assets has been added and separated timeout for static requests. Parameter: generalSettings.application.requestStaticChunk Parameter: generalSettings.application.requestStaticTimeout

Loggingโ€‹

Added environment variables to change log verbosity. Variable: LOG_FSI_LEVEL Variable: LOG_ROOT_LEVEL

The used memory is now displayed in detail per job.

Supported operating systemโ€‹

Removed support for running FSI Server directly under MacOS X (x86).

Live data viewโ€‹

Fix problem with display the correct import queue lenght.

PNG imagesโ€‹

Fix issues with PNG encoded images with palettes and no transparency channel.

Health Serviceโ€‹

The internal health thread use now a mockup renderer to determine out-of-memory issues during runtime.

Add support for static fallback imagesโ€‹

It's now possible to use static redirects as 404 fallback images.

Response header X-Dimโ€‹

Fix issue (wrong value) with X-Dim response header.

Bugfix format scannerโ€‹

Fixed a recognition bug in format scanner, if magic format scanner was enabled.

FSI Layersโ€‹

Added viewer FSI Layers. HTML5 and Javascript based viewer to display multiple images or html elements as stacked layers which can be configured.

20.11

Feature Release

JDK: 11.0.9 Tomcat: 9.0.40

Important Security Bug-fix Release

Severity: High

CVE-2021-24122 (Tomcat - fixed in 9.0.40)

Extend response headersโ€‹

Added X-Content-Length and X-Dim headers to image requests. Useful for JS-based image viewers.

Fix importer issueโ€‹

  • Fixed possible deadlock when import queue was full.
  • Reorg of ordering when big images converted to the storage.

Fix header cache problemsโ€‹

  • Fixed issue with incorrect invalidation of internal header cache. Could result in an incorrect Content-Length header.
  • Removed usage of header cache for batch jobs

FTL Templatesโ€‹

XML-based FTL templates had inconsistent line breaks.

Animated GIFโ€‹

  • Fixes a problem with non-existent images, when a GIF animation should be created from a picture sequence.
  • Fix issue when image has different resolutions.

Template compatibilityโ€‹

  • Added compatibility for old request with tpl=info requests instead of info.xml
  • Removed FTL compression in all included templates

File operationsโ€‹

Fixed file operation issues from static to storage connectors.

I/O concurrencyโ€‹

Changed default value for "2" to "auto". The optimum value is determined according to the CPU cores.

Aborted HTTP connectionsโ€‹

Fixed timeout issues when client request is aborted.

Server haltโ€‹

Decreased stopping time if server under load. At very high load, stopping could exceed the Tomcat Stop Timeout.

Performance peaksโ€‹

Increased the maximum of possible threads for image rendering.

Image converterโ€‹

  • Fixed an issue when BMP images converted. Possible annoying log message removed.
  • Fixed error with some 16-bit / channel images.
  • Increased memory usage per converter thread
  • Changed memory usage calculation per job

PNG readerโ€‹

Improved memory usage for the PNG image reader

EULAโ€‹

Added EULA agreement to the web interface.

20.07

Feature Release

JDK: 11.0.8 Tomcat: 9.0.37

Important Security Bug-fix Release

Severity: High

CVE-2020-13935 (Tomcat - fixed in 9.0.37) CVE-2020-11996 (Tomcat - fixed in 9.0.36) CVE-2020-9484 (Tomcat - fixed in 9.0.35)

License testโ€‹

Changed status code if API license test failed. Before this version the code was 500 and from now on it is 400.

Static connectorโ€‹

Session authentication check with static connectors improved.

PNG Readerโ€‹

PNG images with wrong ICC profiles (CMYK instead of RGB) is now ignored.

Fallback images per source connectorโ€‹

Added errorImage and importingImage to connectors. You can now define fallback images per connector.

Memory allocationโ€‹

Added pooling for recurring memory allocations.

Import effectsโ€‹

Fixed incorrect saving of image dimensions when using import effects such as trim.

Import scannerโ€‹

Decreased the startup and per-round delay for directory scanning. Increased scanning interval in low activity situations.

Time limited licensesโ€‹

Licence expiry dates now have a little extra time buffer.

Alpha channelsโ€‹

Fixed color issue with some pre-calculated alpha channels.

Encoder auto-negotiationโ€‹

Fixed negotiation of image encoding with format=auto of old Internet Explorer browsers.

Shutdownโ€‹

Fixed null pointer exception on shutdown.