Uploaded image for project: 'OpenOLAT'
  1. OpenOLAT
  2. OO-1054

Prevent system from starting when a non-UTF-8 filesystem has been detected

    XMLWordPrintable

    Details

      Description

      Sometimes it happens that tomcat is started with a somehow wrong environment. This can lead to setting the file.encoding property to something else than UTF-8. In such a case filenames written to the filesystem use another encoding. Once the system starts with UTF-8 again, those filenames are broken and can not be recovered. Worst case is to have a mixed filesystem with some UTF-8 files and some ISO-Latin files.

      OpenOLAT does already check for UTF-8 capable filesystem, however it does not enforce using this filesystem. This issue implements a system abort when a non-utf-8 filesystem is detected.

      This check can be disabled in the olat.local.properties. The new config value is:

      # abort system startup when no UTF-8 capable file system is detected. In production this should be set to 
      # true to prevent accidental startup with another encoding which leads to a big data mess
      enforce.utf8.filesystem=true
      

      This should only be set to false for developer system wich are often set up on OSX or Windows which in most cases do not use UTF-8 by default. For production most likely this should never be set to false!

        Attachments

          Activity

            People

            Assignee:
            gnaegi Florian Gnägi
            Reporter:
            gnaegi Florian Gnägi
            Tester:
            Stéphane Rossé
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 30 minutes
                30m