Memory and Java Options

DbSchema runs on the Java that comes with it. Two Java options matter most: the memory limit, and how DbSchema draws the window. Both are set in a text file in the installation folder, and DbSchema has no dialog for them.

SystemFile
WindowsDbSchema.vmoptions, next to DbSchema.exe, usually in C:\Program Files\DbSchema
macOSDbSchema.app/Contents/vmoptions.txt
LinuxDbSchema.vmoptions, next to the DbSchema launcher

The file holds one option per line. A line that starts with # is ignored.

Edit DbSchema.vmoptions

  1. Close DbSchema.
  2. Open the file in a text editor. On Windows, start the editor as administrator: the file is in Program Files, which only an administrator can change.
  3. Change the line, and save the file.
  4. Start DbSchema again. The new value applies from this start on.

See how much memory DbSchema has

Choose Help → About DbSchema. The Memory line shows how much memory DbSchema uses now, and the most it may use.

The Runtime section of the About DbSchema dialog, with Memory showing 310 MB of 1024 MB

In the picture, DbSchema may use at most 1024 MB.

Raise the memory limit

If DbSchema shows a Java heap space or memory error, it needs more memory. This happens with very large schemas and diagrams.

  1. Find the line that starts with -Xmx in DbSchema.vmoptions.
  2. Raise the value, for example to 4 GB:
    -Xmx4G
    
  3. Save the file and start DbSchema again.

Keep the value below the memory of your computer, so other programs keep room to run.

A new installation of DbSchema writes -Xmx8G. An update keeps your existing DbSchema.vmoptions, so an installation updated from an older version can still have a lower limit, such as -Xmx1024m.

Fix slow painting and Remote Desktop

DbSchema draws with the graphics card. Over Windows Remote Desktop, in some virtual machines, and with some graphics drivers, that makes painting slow, makes tooltips flicker, or freezes the window after it sat idle. When DbSchema notices slow painting, it shows a Slow Rendering Detected notification.

Software rendering avoids the graphics card. The file already holds the lines for it. Remove the # in front of them:

-Dprism.order=sw
-Dprism.vsync=false

An older file may hold only the first line. Then add the second one.

Find the log files for a support ticket

DbSchema writes its log to .DbSchema/logs/logs.txt in your home folder.

  • To read it, choose Help → Output Logs.
  • To send it, choose Help → Report a Bug and keep Application logs ticked. Show files opens the folder.

Common problems

DbSchema says it ran out of memory, but my computer has plenty

DbSchema uses only as much memory as -Xmx allows, whatever the computer has. Check the limit in Help → About DbSchema, then raise it.

I changed the file, but nothing changed

DbSchema reads the file only when it starts. Close every DbSchema window and start it again. On Windows, check that the editor saved the file: without administrator rights it may fail to write into Program Files.

Next steps