DocFetcher Pro 1.13 Release

DocFetcher Pro 1.13 has just been released.

The bundled Java runtime has been downgraded from Java 16 to Java 11 due to some reports of stability issues. – Apparently, it’s unwise to live on the bleeding edge of Java technology. The downgrade has virtually no impact on performance: In the previously discussed benchmark, going from Java 16 to Java 11 results in only about 100 ms of additional index loading time.

In addition to the Java runtime downgrade, this release fixes a handful of crashes and some other issues. For details, see the changelog.


Subscribe to DocFetcher Pro news

DocFetcher Pro 1.12 Release: Java Downgrade

Yesterday’s release of DocFetcher Pro 1.12 brought an upgrade of the bundled Java runtime from Java 8 to Java 16. Since then, there have been reports of macOS users being unable to launch the new 1.12 release, specifically users running macOS 11.3 and 11.4.

The likely reason for this launch issue is an incompatibility between the latest macOS versions and Java 16, and downgrading to Java 11 seems to resolve the problem. Therefore, the DocFetcher Pro 1.12 release files for macOS have been replaced on Gumroad. They have the same filenames as before, but now come bundled with Java 11. Give these new files a try if you experienced the 1.12 launch issue. The release files for Windows and Linux remain unchanged, if you’ve bought any of those.

In terms of performance, there’s virtually no difference between Java 11 and Java 16. Specifically, these are the measured index loading times with the benchmark from the previous post:

  • DocFetcher Pro 1.11 + Java 8: 63.048 s (100%)
  • DocFetcher Pro 1.12 + Java 8: 15.316 s (24%)
  • DocFetcher Pro 1.12 + Java 11: 8.824 s (14%)
  • DocFetcher Pro 1.12 + Java 16: 8.726 s (14%)

As you can see from the figures, the downgrade from Java 16 to Java 11 results in an increase of index loading time by a measly 100 ms, which may very well be a statistical fluke. As before, all load times are averages over 10 test runs each.


Subscribe to DocFetcher Pro news

DocFetcher Pro 1.12 Release

DocFetcher Pro 1.12 has just been released. This release fixes a 7z- and a tar-archive-related crash, and brings dramatic performance improvements with respect to the handling of large indexes. The performance improvements were implemented partly in response to user feedback, and partly in preparation for the upcoming DocFetcher Pro Server, which will likely have to deal with much larger data sets than the current non-server version.

For some context: DocFetcher Pro is a full rewrite of the original DocFetcher, so under the hood they are actually two completely different programs. During the rewrite, the emphasis was on correctness and long-term maintainability, while performance was less of a concern. As a result, DocFetcher Pro used to be, up until now, generally slower than DocFetcher, although this difference in performance was not noticeable until you tried to index hundreds of thousands of files. When you did index that much data, the program would exhibit various kinds of slowness: It took forever to load indexes during startup, exiting the program became slow, and checking and unchecking folders in the Search Scope pane also became slow.

In the new 1.12 release, these performance issues were addressed with a major restructuring of some performance-critical code sections, numerous smaller code optimizations here and there, and an upgrade of the bundled Java runtime from Java 8 to Java 16. In a benchmark with an index comprising about 2.8 million files, these changes led to dramatic performance improvements, notably a reduction of index loading time from 63.048 s down to 8.726 s, which is a reduction down to about 14%, or 1/6. (Note: The two loading times are averages over 10 test runs each.) Other index-related operations are now also significantly faster.


Subscribe to DocFetcher Pro news