If you host your own Noodle server please use a firewall.

The Noodle white list is a list of IP ranges that are allowed to connect to your noodle.

IP ranges are in the form of an ipv4 and a netmask.

If your settings are invalid Noodle will let everyone see the login page.

If you do something silly like 0.0.0.0/32 contact us and we can help you reset it with

update system_settings set value = '0.0.0.0/0', binary_data = null where key_name = 'WHITE_LIST';
service noodle restart

Only an internal network Example:

192.168.1.0/24

Only 2 IPs Example:

209.208.107.114/32
209.208.67.178/32

Everyone can see the login page Example:

0.0.0.0/0

Noodle shows performance measurements in

System Tools > Analytics

The heaviest part of Noodle is the RDBMS and to make it fast you need to:

  1. Upgrade software:
    • OS
    • Java
    • DB
    • Noodle
  2. Configure your software properly:
    • set the DB to use your RAM, and otherwise optimize its settings (postgres.conf).
    • set the HTTP pool sizes appropriately (server.xml).
    • make sure the DB and temp folders are not virus scanned.
    • remove or fix Windows domain if rights are timing out.
    • make sure caching is enabled on client browsers.
    • do backups and other CPU/RAM/disk heavy operations on the server after hours.
    • maintenance:
      • PGSQL: REINDEX DATABASE noodledb; VACUUM ANALYZE;
      • MSSQL: ALTER INDEX ALL ON table REBUILD; -- per table (although correct config should do that for you).

Options that make your RDBMS faster:

  1. More disk space if you're using a NTFS volume over 90%.
  2. As much RAM as possible (up to the size of your database+ whatever your OS uses) but at least 1GB + your index size:
    • PGSQL: SELECT SUM(pg_indexes_size(oid)) FROM pg_class;
    • MSSQL: SELECT SUM(used_page_count) FROM dm_db_partition_stats;
  3. Multi-core CPU (more than 4 cores has less effect and more than 30 is pointless).
  4. Putting as many HDD as you can in RAID_0 (you should see a linear performance boost) and /or using SSD or hybrid drives or hybrid volumes.

More, right from the source:

Recommended requirements:

  • Minimal: 500MHz CPU, 500MB RAM, 1GB HDD
  • Small: 1GHz CPU, 1GB RAM, 1GB HDD
  • Optimal: 4 core CPU(s), 4GB RAM, 1TB hybrid volume
  • Large: 8 core CPU(s), 24GB RAM, 1TB SSD

An extensible full-text search is available for Postgres.

MSSQL full text search

1) Install the 3MB MSOffice IFilters not included in the 3GB MSSQL (instructions)

Other formats can be supported, like PDF, ODF, etc.

2) You can verify file type support with this:

select * from sys.fulltext_document_types order by document_type;

3) Optionally if you have already uploaded files to noodle you should right click 'rebuild' the 'Databases/noodledb/Storage/Full Text Catalogs/BINARY_DATA' table.

Keep in mind you have to use the advanced search in Noodle and select the Full Text option to use the MSSQL FTS.

Related: configure MSSQL and migrate

Vialect enjoys using all the most popular browsers and with this post aims to inform clients of the quirks that come with browser usage. Web Browser support:

1) Microsoft internet explorer ( 11, 38 )

  • -New versions do not support old OSs
  • -Windows only
  • -Is disabled for admin on windows server, and has unusable defaults for other users.
  • -no WebRTC support

2) Mozilla Firefox ( 55, m )

  • +mobile plugins

3) Google chrome ( 61, m )

  • +Newest, fastest, and Most secure browser

4) Mobile safari

  • -Is the only option for iOS
  • -Has some serious cookie/cashing/redirect issues sometimes
  • -Scrolling smoothness and HTML5 support is behind, lacking iframe support
  • -no WebRTC support

There is a limitation of the PostgreSQL installer if you are using windows domains.

The installer will need to make a postgres user that have write permissions on %PROGRAMFILES%\Postgres.

If the PostgreSQL is/will-be unable to do so, please setup the permissions beforehand. Adding write for "Everyone" or adding rights for a new postgres user with the default password Pgsq1p@ssword will avert this limitation.

If you tried a normal noodle install and you have a black "upgrade in progress" screen then this is likely the problem. There is no need to reinstall noodle; just uninstall PostgreSQL, set up the permissions, download the PGInstaller and reinstall PostgreSQL.

After you install PostgreSQL you will need to edit the pg_hba.conf and make sure there is a "127.0.0.1/32 password" line.
Next run the init.sql in the Noodle folder with PGAdmin3 one line at a time.
Restart the PostgreSQL then Noodle service.

Full-text search is extensible to any format, so long as there is a CLI tool to convert it to text.

Configuration of ORACLE and MSSQL built-in indexers differ and can be used in combination with this method.

To index the contents of popular formats like office documents on linux add the following to your .conf:

#tested
#apt/yum install -y poppler-utils pstotext antiword html2text unrtf python-excelerator libwpd-tools unzip catdoc
Indexer.IndexContent = ALL
Indexer.toTxt.Enabled = true
Indexer.toTxt.pdf = "pdftotext -q -eol unix -enc UTF-8 $IN $OUT"
Indexer.toTxt.doc = "antiword $IN > $OUT"
Indexer.toTxt.html = "html2text -nobs -o $OUT $IN"
Indexer.toTxt.xls = "xls2csv $IN > $OUT"
Indexer.toTxt.mp3 = "id3info $IN | grep '===' | grep -v 'PRIV' | grep -v 'image\/' | perl -p -e 's/^.+(\)|\])\:/ /g' > $OUT"
Indexer.toTxt.rtf = "unrtf --nopict --text $IN 2>/dev/null | grep -v '^### ' > $OUT"
Indexer.toTxt.docx = "unzip -p $IN word/document.xml | perl -p -e 's/<.+?>/ /g' > $OUT"
Indexer.toTxt.pptx = "unzip -p $IN ppt/slides/*.xml | perl -p -e 's/<.+?>/ /g' > $OUT"
Indexer.toTxt.xlsx = "unzip -p $IN xl/sharedStrings.xml | perl -p -e 's/<.+?>/ /g' > $OUT"
Indexer.toTxt.odt = "unzip -p $IN content.xml | perl -p -e 's/<.+?>/ /g' > $OUT"
Indexer.toTxt.ods = "unzip -p $IN content.xml | perl -p -e 's/<.+?>/ /g' > $OUT"
Indexer.toTxt.odp = "unzip -p $IN content.xml | perl -p -e 's/<.+?>/ /g' > $OUT"

# TensorFlow image search
#Indexer.toTxt.jpg = "python classify.py --image $IN | grep -P '^1\. ' > $OUT"

## others
#Indexer.toTxt.wpd = "wpd2text $IN > $OUT"
#Indexer.toTxt.jpg = "exiftool $IN > $OUT #for camera type or gps location"
#Indexer.toTxt.xls = "py_xlstoTxt $IN > $OUT # supports sheets but adds sheet = ----"
#Indexer.toTxt.docx = "unzip -p $IN word/document.xml | sed -e 's/<[^>]\{1,\}>/ /g' > $OUT"

Windows examples

Indexer.IndexContent = ALL
Indexer.Interval = 30
Indexer.toTxt.Enabled = true
Indexer.toTxt.pdf = "\"C:/Program Files/xpdf/pdftotext.exe\" $IN $OUT"
Indexer.toTxt.doc = "C:\antiword\antiword.exe $IN > $OUT"

You can populate your conf file with command line method of converting the file types of your choice to text.

Be sure "System Tools > Settings > General > Enable Full Text Search" is set to "Yes".

  • Noodle is not sending any emails
    • (using your own smtp server) White list the server or check authentication
    • (using Vialect smtp from a local install) Check firewalls:
      • Send us the public IP of your Noodle server
      • Test if your Noodle server can contact other SMTP servers:
        • install telnet:
          • Windows: pkgmgr /iu:"TelnetClient"
          • MacOS: brew install telnet
          • Linux(Debian,Fedora,Arch) : apt install telnet || dnf install telnet || yay -S inetutils
        • echo "QUIT" | telnet gmail-smtp-in.l.google.com 25
        • Some consumer ISPs block port 25.
    • Check SPAM mitigations.
  • Noodle is sending some emails
    • There is an invalid address in the email so the SMTP server trashes the whole thing.
    • There is a rule on the SMTP server blocking one or more addresses.
    • make sure your email rules apply to all IPs that routing could use as a source.
  • Email source

If you want to prevent all emails please blank the "SMTP Server Name" setting.

If you need more help contact us and we will find the problem by reviewing the logs.