pbek / QOwnNotes

QOwnNotes is a plain-text file notepad and todo-list manager with Markdown support and Nextcloud / ownCloud integration.
https://www.qownnotes.org/
GNU General Public License v2.0
4.61k stars 410 forks source link

[I] Is It Possible to Improve the Performance of the App, Especially When Renaming Notes? #2245

Closed netguerrilla12 closed 2 years ago

netguerrilla12 commented 2 years ago

Expected behaviour

Renaming a note should take only a few seconds.

Actual behaviour

Renaming a note can sometimes take over a minute.

Steps to reproduce

  1. I'm not sure if this happens in environments where there's a small number of notes. I now have 5K+ notes in QON.
  2. Create a new note.
  3. Rename the note to something more meaningful than the default name.
  4. The app now proceed to load notes multiple times. This morning I counted four times that it loaded notes. I've seen it as high as five times.
  5. I timed it this morning. It took 69 seconds to rename one note.
  6. I typically rename new notes because I want the note name to match (as closely as possible) the title of the note.
  7. There is a workaround for this issue. The workaround is to not rename any new notes. But it's nice to be able to look at the name of the note to get some idea of what the note's about.

Relevant log output in the Log panel

Expand ``` [14:51:20] [debug] updatePanelMenu - 'updatePanelMenu' ```

Information about the application, settings and environment

Expand QOwnNotes Debug Information =========================== ## General Info **Current Date**: `Mon Sep 27 14:51:25 2021` **Version**: `21.9.12` **Build date**: `Sep 26 2021` **Build number**: `889` **Platform**: `windows` **Operating System**: `Windows 10 Version 2009` **Build architecture**: `x86_64` **Current architecture**: `x86_64` **Release**: `GitHub Actions` **Qt Version (build)**: `5.15.2` **Qt Version (runtime)**: `5.15.2` **Portable mode**: `no` **Settings path / key**: `\HKEY_CURRENT_USER\Software\PBE\QOwnNotes` **Application database path**: `C:\Users\SV1\AppData\Roaming\PBE\QOwnNotes\QOwnNotes.sqlite` **Application arguments**: `C:\QOwnNotes\QOwnNotes.exe`, `--after-update`, `C:\Users\SV1\AppData\Local\Temp\QOwnNotes-lHaGgc-updater.bat` **Qt Debug**: `0` **Locale (system)**: `en_US` **Locale (interface)**: *empty* **Primary screen resolution**: `1360x768` **Icon theme**: `breeze-qownnotes` **Notes in current note folder**: `5263` **Calendar items**: `0` **Enabled scripts**: `0` ## Server Info **serverUrl**: *empty* **appIsValid**: `no` **notesPathExists**: *empty* **connectionErrorMessage**: *empty* ## Spellchecking **Enabled**: `false` **Selected language**: *empty* **Language codes**: *empty* **Language names**: *empty* **Application dictionaries path**: `C:\Users\SV1\AppData\Roaming\PBE\QOwnNotes\dicts` ## Note folders **currentNoteFolderId**: `1` ### Note folder `default` **id**: `1` **isCurrent**: `yes` **activeTagId**: `486` **localPath**: `C:\Users\SV1\Sync\QOwnNotes` **remotePath**: `Notes` **cloudConnectionId**: `1` **isShowSubfolders**: `no` **isUseGit**: `no` **activeNoteSubFolder name**: *empty* **database file**: `C:\Users\SV1\Sync\QOwnNotes\notes.sqlite` ## Cloud connections ### Cloud connection `Default` **id**: `1` **isCurrent**: `yes` **serverUrl**: *empty* **username**: *empty* ## Enabled scripts ## Settings **AboutDialog/geometry** (QByteArray): `` **ActiveNoteHistoryItem** (NoteHistoryItem): `` **Debug/fakeOldVersionNumber** (QString): `false` **Debug/fileLogging** (QString): `false` **Editor/CurrentSchemaKey** (QString): `EditorColorSchema-6033d61b-cb96-46d5-a3a8-20d5172017eb` **Editor/autoBracketClosing** (QString): `true` **Editor/autoBracketRemoval** (QString): `true` **Editor/disableCursorBlinking** (QString): `false` **Editor/editorWidthInDFMOnly** (QString): `true` **Editor/highlightCurrentLine** (QString): `true` **Editor/indentSize** (int): `4` **Editor/removeTrailingSpaces** (QString): `false` **Editor/showLineNumbers** (QString): `false` **Editor/useTabIndent** (QString): `false` **Editor/vimMode** (QString): `false` **EvernoteImport/AttachmentImportCheckBoxChecked** (QString): `true` **EvernoteImport/ImageImportCheckBoxChecked** (QString): `true` **EvernoteImport/MetaDataUnCheckedList** (QStringList): `, created, updated, , note-attributes/subject-date, note-attributes/latitude, note-attributes/longitude, note-attributes/altitude, note-attributes/author, note-attributes/source, note-attributes/source-application, note-attributes/application-data` **EvernoteImportDialog/geometry** (QByteArray): `` **FileDialog/LastPath** (QString): `C:/Users/SV1/Downloads/QON Import` **FileDialog/LastPath-Evernote Import** (QString): `C:/Users/SV1/Downloads/Evernote` **FileDialog/LastPath-ImportTextFiles** (QString): `C:/QOwnNotes/Notes/Test` **FileDialog/LastPath-Joplin Import** (QString): `C:/Users/SV1/Downloads/QON Import` **FileDialog/LastPath-NoteMarkdownExport** (QString): `C:/Users/SV1/Downloads/Joplin` **IssueAssistantDialog/geometry** (QByteArray): `` **JoplinImport/AttachmentImportCheckBoxChecked** (QString): `true` **JoplinImport/FolderImportCheckBoxChecked** (QString): `false` **JoplinImport/ImageImportCheckBoxChecked** (QString): `true` **JoplinImport/MetadataImportCheckBoxChecked** (QString): `false` **JoplinImport/TagImportCheckBoxChecked** (QString): `true` **JoplinImportDialog/geometry** (QByteArray): `` **LastUpdateCheck** (QDateTime): `2021-09-27T14:21:17.594` **LinkDialog/geometry** (QByteArray): `` **LogWidget/criticalLog** (QString): `true` **LogWidget/debugLog** (QString): `true` **LogWidget/fatalLog** (QString): `true` **LogWidget/infoLog** (QString): `true` **LogWidget/scriptingLog** (QString): `true` **LogWidget/statusLog** (QString): `true` **LogWidget/warningLog** (QString): `true` **MainWindow/geometry** (QByteArray): `` **MainWindow/mainToolBar.iconSize** (int): `24` **MainWindow/menuBarGeometry** (QByteArray): `` **MainWindow/noteTextEdit.code.font** (QString): `Courier New,9,-1,2,50,0,0,0,0,0` **MainWindow/noteTextEdit.font** (QString): `Calibri,12,-1,5,50,0,0,0,0,0,Regular` **MainWindow/noteTextView.code.font** (QString): `Courier New,9,-1,2,50,0,0,0,0,0` **MainWindow/noteTextView.font** (QString): `MS Shell Dlg 2,8.25,-1,5,50,0,0,0,0,0` **MainWindow/noteTextView.ignoreCodeFontSize** (QString): `true` **MainWindow/noteTextView.rtl** (QString): `false` **MainWindow/noteTextView.underline** (QString): `true` **MainWindow/noteTextView.useEditorStyles** (QString): `true` **MainWindow/noteTextView.useInternalExportStyling** (QString): `true` **MainWindow/tagTreeWidgetExpandState-1** (QStringList): `13, 1, 41, 43` **MessageBoxOverride/restore-note** (int): `16384` **NoteDiffDialog/geometry** (QByteArray): `` **NoteFolder-1/NoteTabNameList** (QStringList): `Jetpack CRM The Entrepreneurs' CRM for WordPress` **NoteFolder-1/NoteTabStickinessList** (QStringList): *empty* **NoteFolder-1/NoteTabSubFolderPathDataList** (QStringList): *empty* **NoteFolder-1/allowDifferentNoteFileName** (QString): `true` **NoteHistory-1** (QVariantList): `` **NoteHistoryCurrentIndex-1** (int): `199` **PiwikClientId** (QString): `` **Printer/NotePrinting** (QByteArray): `` **ScriptRepositoryDialog/geometry** (QByteArray): `` **ScriptRepositoryDialog/mainSplitterState** (QByteArray): `` **SearchEngineId** (int): `2` **SettingsDialog/geometry** (QByteArray): `` **SettingsDialog/mainSplitterState** (QByteArray): `` **ShowSystemTray** (QString): `false` **StartHidden** (QString): `false` **TagAddDialog/geometry** (QByteArray): `` **UpdateDialog/geometry** (QByteArray): `` **WelcomeDialog/geometry** (QByteArray): `` **acceptAllExternalModifications** (QString): `false` **allowNoteEditing** (QString): `true` **allowOnlyOneAppInstance** (QString): `true` **appMetrics/disableAppHeartbeat** (QString): `false` **appMetrics/disableTracking** (QString): `false` **appMetrics/notificationShown** (QString): `true` **automaticNoteFolderDatabaseClosing** (QString): `false` **checkSpelling** (QString): `false` **closeTodoListAfterSave** (QString): `false` **cryptoKey** (qlonglong): `` **currentNoteFolderId** (int): `1` **currentWorkspace** (QString): `wVw9Ynnw2u52` **cursorWidth** (int): `1` **customNoteFileExtensionList** (QStringList): `md, txt` **darkMode** (QString): `false` **darkModeColors** (QString): `false` **darkModeIconTheme** (QString): `false` **darkModeTrayIcon** (QString): `false` **defaultNoteFileExtension** (QString): `md` **demoNotesCreated** (QString): `true` **disableAutomaticUpdateDialog** (QString): `true` **disableSavedSearchesAutoCompletion** (QString): `false` **dockWasInitializedOnce** (QString): `true` **enableNoteTree** (QString): `false` **enableSocketServer** (QString): `true` **enableWebAppSupport** (QString): `false` **externalEditorPath** (QString): *empty* **fullyHighlightedBlockquotes** (QString): `false` **gitCommitInterval** (int): `30` **gitExecutablePath** (QString): *empty* **gitLogCommand** (QString): *empty* **guiFirstRunInit** (QString): `true` **ignoreAllExternalModifications** (QString): `true` **ignoreAllExternalNoteFolderChanges** (QString): `false` **ignoreNoteSubFolders** (QString): `^\.` **imageScaleDown** (QString): `false` **imageScaleDownMaximumHeight** (int): `1024` **imageScaleDownMaximumWidth** (int): `1024` **initialLayoutIdentifier** (QString): `full` **insertTimeFormat** (QString): *empty* **interfaceFontSize** (int): `11` **interfaceLanguage** (QString): *empty* **internalIconTheme** (QString): `false` **itemHeight** (int): `15` **legacyLinking** (QString): `false` **localTrash/autoCleanupDays** (int): `30` **localTrash/autoCleanupEnabled** (QString): `true` **localTrash/supportEnabled** (QString): `true` **markdownHighlightingEnabled** (QString): `true` **navigationPanelHideSearch** (QString): `false` **networking/ignoreSSLErrors** (QString): `true` **networking/proxyType** (int): `2` **newNoteAskHeadline** (QString): `false` **noteEditIsCentralWidget** (QString): `true` **noteListPreview** (QString): `false` **noteSaveIntervalTime** (int): `10` **noteSubfoldersPanelDisplayAsFullTree** (QString): `true` **noteSubfoldersPanelHideSearch** (QString): `false` **noteSubfoldersPanelOrder** (int): `0` **noteSubfoldersPanelShowFullPath** (QString): `false` **noteSubfoldersPanelShowNotesRecursively** (QString): `false` **noteSubfoldersPanelShowRootFolderName** (QString): `true` **noteSubfoldersPanelSort** (int): `0` **notesPanelOrder** (int): `0` **notesPanelSort** (int): `1` **notesPath** (QString): `C:/Users/SV1/Sync/QOwnNotes` **notifyAllExternalModifications** (QString): `false` **overrideInterfaceFontSize** (QString): `false` **ownCloud/supportEnabled** (QString): `false` **ownCloud/todoCalendarBackend** (int): `3` **ownCloud/todoCalendarCalDAVPassword** (QString): `` **ownCloud/todoCalendarCalDAVServerUrl** (QString): *empty* **ownCloud/todoCalendarCalDAVUsername** (QString): *empty* **ownCloud/todoCalendarCloudConnectionId** (int): `1` **ownCloud/todoCalendarDisplayNameList** (QStringList): *empty* **ownCloud/todoCalendarEnabledList** (QStringList): *empty* **ownCloud/todoCalendarEnabledUrlList** (QStringList): *empty* **ownCloud/todoCalendarUrlList** (QStringList): *empty* **recentNoteFolders** (QStringList): `C:/Users/SV1/Sync, C:/QOwnNotes/Test, C:/QOwnNotes/Notes` **restoreCursorPosition** (QString): `true` **restoreLastNoteAtStartup** (QString): `true` **restoreNoteTabs** (QString): `true` **savedSearches/noteFolder-1** (QStringList): `Jetpack CRM The Entrepreneurs' CRM for WordPress, WP-CRM - Usability Dynamics, Inc., [I] Untagged Notes Count is Double What it Should be After Adding a New Note · Issue #2241 · pbek QOwnNotes, Note 2021-09-24T15.21.14, Note 2021-09-24T15.15.34, 20 BEST Evernote Alternatives and Competitors (Free Paid) in 2021, Note 2021-09-24T12.04.22, Note 2021-09-24T11.50.30, Note 2021-09-24T11.45.34, Russell Welcome - Magnetic Marketing, Group Training with Howard Giles 2021-09-23, SSL Checker, What is a 2-in-1 Laptop a Guide to Convertible Laptops Lenovo US, SSL Checker 2021-09-22T12.10.05, The Ultimate Guide to LinkedIn Groups, How to Use LinkedIn Groups (the Right Way) to Build Relationships for Your Business Constant Contact, Why LinkedIn Groups Are Great and How to Build a Successful One, unison home equity reviews - Google Search, Win at Work and Succeed at Life Michael Hyatt, 16 Best Podcasts on Motivation to Help You Reach Your Goals, Note 2021-09-17T13.33.44, 20 Motivational Podcasts to Start Following in 2021, Note 2021-09-16T10.52.30, Note 2021-09-16T08.31.38, Note 2021-09-16T08.24.15, SS&C Careers - Workday, Note 2021-09-13T16.24.11, GET COMFORTABLE ON-CAMERA, Joe Rogan - Why Obese People Can't Lose Weight - YouTube, A Customer Discovered Their $350 Lego Set was Missing Pieces. The Company's Response Was Brilliant Inc.com, Note 2021-09-02T13.14.21, Using WTSQuerySessionInformation to get client computer name when running in a remote session - code - ClarionHub, How to call a function in user32.dll - questions - ClarionHub 2021-09-01T15.40.33, Clarion Online Article by Bruce Johnson, systemMetrics, you mean, Home - Fitness Professionals Marketing Your Business, Debra Walker, Note 2021-08-26T13.07.30, Get the name of the logged-in user and the workstation, Get the Environment Variables, How to call a function in user32.dll - questions - ClarionHub, Use WINAPI to get domain - code Snippets - ClarionHub, Duplicate procedure template after importing procedure from another App - questions tips - ClarionHub, lose 100 lbs - Google Search 2021-08-24T15.06.00, Infinite Banking For Business Owners - YouTube 2021-08-24T15.05.24, Life Insurance Company Ratings and Why They Matter Right Now Podcast - YouTube 2021-08-24T15.04.41, Netguerrilla's Food Diary MyFitnessPal.com, Life Insurance Company Ratings and Why They Matter Right Now Podcast - YouTube, Infinite Banking For Business Owners - YouTube, lose 100 lbs - Google Search, Is Losing 100 Lbs. in a Year Healthy and Realistic – Fat, Broke and Stupid, Home - Fit 2 Fat 2 Fit, QOwnNotes Web Companion browser extension QOwnNotes 2021-08-22T18.12.55, QOwnNotes Web Companion browser extension QOwnNotes, Note 2021-08-22T08.28.50, Note 2021-08-22T08.24.54, Note 2021-08-06T16.06.14, Note 2021-08-06T16.05.39, Unbenannt, Images and Attachments, WordPress Installation Check List, Note 2021-08-05T09.20.41, David Busch's Canon EOS Rebel T61300D Guide to Digital SLR Photography David D, Amazon, Test Notiz, Fwd We just shipped your order!, Fwd Re Re ABEBOOKS Order 137361858, Fwd Re ABEBOOKS Order 137361858, Fwd AbeBooks Sales Order No, 000df3247ebc4551a9ad2b7233ad07a0` **showMatches** (QString): `true` **showMenuBar** (QString): `true` **showStatusBar** (QString): `true` **systemIconTheme** (QString): `false` **tagWasAddedToNote** (QString): `true` **taggingShowNotesRecursively** (QString): `false` **tagsPanelHideNoteCount** (QString): `false` **tagsPanelHideSearch** (QString): `false` **tagsPanelOrder** (int): `0` **tagsPanelSort** (int): `0` **todoCalendarSupport** (QString): `false` **toolbar/1/items** (QStringList): `action_New_note, action_Find_note, action_Remove_note, action_Open_note_in_external_editor, actionShow_local_trash, actionAllow_note_editing, , action_Back_in_note_history, action_Forward_in_note_history, , action_Find_text_in_note, actionReplace_in_current_note, , actionShow_versions, actionShow_trash, actionShare_note, , actionShow_Todo_List` **toolbar/1/name** (QString): `mainToolBar` **toolbar/1/title** (QString): `main toolbar` **toolbar/2/items** (QStringList): `actionFormat_text_bold, actionFormat_text_italic, actionStrike_out_text, actionInsert_code_block, actionInsert_block_quote` **toolbar/2/name** (QString): `formattingToolbar` **toolbar/2/title** (QString): `formatting toolbar` **toolbar/3/items** (QStringList): `actionInsert_text_link, actionInsert_image, actionInsert_current_time` **toolbar/3/name** (QString): `insertingToolbar` **toolbar/3/title** (QString): `inserting toolbar` **toolbar/4/items** (QStringList): `action_Encrypt_note, actionEdit_encrypted_note, actionDecrypt_note` **toolbar/4/name** (QString): `encryptionToolbar` **toolbar/4/title** (QString): `encryption toolbar` **toolbar/5/items** (QStringList): `actionWorkspaceComboBox, actionStore_as_new_workspace, actionRemove_current_workspace, actionRename_current_workspace, actionSwitch_to_previous_workspace, actionUnlock_panels, , actionToggle_distraction_free_mode, action_Increase_note_text_size, action_Decrease_note_text_size, action_Reset_note_text_size` **toolbar/5/name** (QString): `windowToolbar` **toolbar/5/title** (QString): `window toolbar` **toolbar/6/items** (QStringList): `action_Quit` **toolbar/6/name** (QString): `quitToolbar` **toolbar/6/title** (QString): `quit toolbar` **toolbar/size** (int): `6` **useNoteFolderButtons** (QString): `false` **useUNIXNewline** (QString): `false` **webAppClientService/serverUrl** (QString): `wss://app.qownnotes.org` **webAppClientService/token** (QString): `` **webSocketServerService/bookmarksNoteName** (QString): `Bookmarks` **webSocketServerService/bookmarksTag** (QString): `bookmarks` **webSocketServerService/port** (int): `22222` **webSocketServerService/token** (QString): `` **workspace-HMuPGGhgMHn2/name** (QString): `Preview only` **workspace-HMuPGGhgMHn2/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-HMuPGGhgMHn2/windowState** (QByteArray): `` **workspace-dYqYLZMC3Y5K/name** (QString): `Minimal` **workspace-dYqYLZMC3Y5K/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-dYqYLZMC3Y5K/windowState** (QByteArray): `` **workspace-initial/name** (QString): `Full` **workspace-initial/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-initial/windowState** (QByteArray): `` **workspace-npsLxBsgeNDz/name** (QString): `Full` **workspace-npsLxBsgeNDz/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-npsLxBsgeNDz/windowState** (QByteArray): `` **workspace-wVw9Ynnw2u52/name** (QString): `Full` **workspace-wVw9Ynnw2u52/noteSubFolderDockWidgetVisible** (QString): `true` **workspace-wVw9Ynnw2u52/windowState** (QByteArray): `` **workspaces** (QStringList): `initial, dYqYLZMC3Y5K, npsLxBsgeNDz, HMuPGGhgMHn2, wVw9Ynnw2u52` ## System environment **ALLUSERSPROFILE**: `C:\ProgramData` **APPDATA**: `C:\Users\SV1\AppData\Roaming` **CommonProgramFiles**: `C:\Program Files\Common Files` **CommonProgramFiles(x86)**: `C:\Program Files (x86)\Common Files` **CommonProgramW6432**: `C:\Program Files\Common Files` **COMPUTERNAME**: `SV1` **ComSpec**: `C:\WINDOWS\system32\cmd.exe` **destination**: `C:\QOwnNotes` **DriverData**: `C:\Windows\System32\Drivers\DriverData` **FPS_BROWSER_APP_PROFILE_STRING**: `Internet Explorer` **FPS_BROWSER_USER_PROFILE_STRING**: `Default` **GOOGLE_API_KEY**: `no` **GOOGLE_DEFAULT_CLIENT_ID**: `no` **GOOGLE_DEFAULT_CLIENT_SECRET**: `no` **HOMEDRIVE**: `C:` **HOMEPATH**: `\Users\SV1` **LOCALAPPDATA**: `C:\Users\SV1\AppData\Local` **LOGONSERVER**: `\\SV1` **NUMBER_OF_PROCESSORS**: `4` **OneDrive**: `C:\Users\SV1\OneDrive` **OneDriveConsumer**: `C:\Users\SV1\OneDrive` **OS**: `Windows_NT` **Path**: `C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\WINDOWS\System32\OpenSSH\;C:\Users\SV1\AppData\Local\Microsoft\WindowsApps;` **PATHEXT**: `.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC` **PROCESSOR_ARCHITECTURE**: `AMD64` **PROCESSOR_IDENTIFIER**: `Intel64 Family 6 Model 60 Stepping 3, GenuineIntel` **PROCESSOR_LEVEL**: `6` **PROCESSOR_REVISION**: `3c03` **ProgramData**: `C:\ProgramData` **ProgramFiles**: `C:\Program Files` **ProgramFiles(x86)**: `C:\Program Files (x86)` **ProgramW6432**: `C:\Program Files` **PROMPT**: `$P$G` **PSModulePath**: `C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules\` **PUBLIC**: `C:\Users\Public` **qownnotesCommand**: `C:\QOwnNotes\QOwnNotes.exe --after-update C:\Users\SV1\AppData\Local\Temp\QOwnNotes-lHaGgc-updater.bat ` **SESSIONNAME**: `Console` **source**: `C:\Users\SV1\AppData\Local\Temp\QOwnNotes-lHaGgc.zip` **SystemDrive**: `C:` **SystemRoot**: `C:\WINDOWS` **TEMP**: `C:\Users\SV1\AppData\Local\Temp` **TMP**: `C:\Users\SV1\AppData\Local\Temp` **unzipCommand**: `C:\Users\SV1\AppData\Local\Temp\QOwnNotes-lHaGgc-unzip.exe -o C:\Users\SV1\AppData\Local\Temp\QOwnNotes-lHaGgc.zip -d C:\QOwnNotes` **unzipExecutable**: `C:\Users\SV1\AppData\Local\Temp\QOwnNotes-lHaGgc-unzip.exe` **USERDOMAIN**: `SV1` **USERDOMAIN_ROAMINGPROFILE**: `SV1` **USERNAME**: `SV1` **USERPROFILE**: `C:\Users\SV1` **windir**: `C:\WINDOWS`
pbek commented 2 years ago

On my old 2014 core i5 laptop renaming happens instantly in a note folder with several thousand notes.

Is there any useful log output if you enable the log panel (see Window / Panels)? Please make sure you also enable debug logging in the log panel (by right-clicking on the panel and and selecting Debug in Options).

And how long does it take to reload a note folder for you?

pbek commented 2 years ago

I typically rename new notes because I want the note name to match (as closely as possible) the title of the note.

You can do that automatically by disallowing that the note file can be renamed manually in the note folder settings. Then the filename will always (as close as possible) match the heading of the note.

netguerrilla12 commented 2 years ago

I'll get the log panel info for you, probably tomorrow. I thought at one point it might be slow because I was using the sync folder with sync.com. So I created a new folder that wasn't synced and copied everything to that folder. The times were about the same as I remember. I'll test that again to be sure, probably tomorrow. I'll also test this issue on another machine. I've tested it only on my 4 year old laptop. I can test it on my desktop as well.

I didn't know there was a setting to force the file name to match (as closely as possible) the note heading. That's what I'd prefer. That's how Evernote does it.

netguerrilla12 commented 2 years ago

I just tested reloading the notes folder on my desktop. That took < 30 seconds. The first time took longer. I'll test it again on both machines to get better data.

pbek commented 2 years ago

Maybe your sync tool is causing multiple note folder reloads (you would see that in the logs). 30 sec is long... I need maybe 1 sec or so for about 1000 notes. How many megabytes do your note files have?

netguerrilla12 commented 2 years ago

I did a little more detailed testing this morning. I've attached three files. The first is QOwnTimes.txt. That file shows the times it took to complete various tasks. I timed these operations with the stopwatch on my watch. The second file is QON Notes Folder Size.JPG. That screen shot shows the size of the QOwnNotes folder.

That size is including media, attachments, etc. The last file is the debug log showing what it did during the file rename process. One thing I noticed that it shows repeatedly is "Notes directory was modified externally." I don't know why it's saying that. I'm not doing anything externally. I have the app set to ignore that situation. Maybe the sync tool is doing something to that folder that I don't see. I don't know.

One test that I want to do for sure later today is to copy my notes to a folder that's not synced and test all of this again. QOwn Times.txt QOwnNotes.log QON Notes Folder Size

pbek commented 2 years ago

I would need to see logs for all actions you are describing in the text file. Btw. all those actions are instant for me on all devices! 927MB with 16.6k files? Lots of binary data? How many note files and how many MB are they?

"Notes directory was modified externally."

Any operation on a file from outside (and even from inside) of QOwnNotes that isn't directly watched by QOwnNotes (and there are a lot of restrictions on that by the operating system) can cause in such a message.

netguerrilla12 commented 2 years ago

I copied my notes to an unsynced folder on my desktop and pointed QON to that folder. Here are my test results. I also changed the setting to make the note name the same as the note header.

  1. Created a new note: 14 seconds. Previous time was 27 seconds.
  2. Changed note header (which amounts to a rename): 48 seconds. Previous time was 1 minute 44 seconds.
  3. Deleted note: 45 seconds.

It's still considerably slower than I'd like but it's quite a bit faster than when it's using the synced folder. Now I have to figure out how to proceed. Do I dump sync,com and move to a local Nexcloud installation? Is there another method I can use for syncing? I suppose I could re-test SyncThing. Could you explain to me in a little more detail how you handle syncing? Do I move to another notes app? I tested Notejoy a little bit this morning. Creating notes was very fast.

Notejoy allows nested tags and nested notebooks but the tagging process isn't nearly as clean as it in QON (though I do wish I could drag and drop notes on to tags - I know you're not a fan of that). And Notejoy doesn't display any note counts for any of the notebooks or tags. I don't know that not having note counts isn't a show stopper but it's surely a nice feature. Someone requested that feature three years ago and they still haven't implemented it.

Please tell me how to enable all the log files and I'll get them for you. There are 5273 MD files and the SQLLite file in the notes folder. Their total size is 36.1 MB. The rest of the space is probably due to attachments.

netguerrilla12 commented 2 years ago

I just did a test import from EN to Notejoy. It worked but it imported no tags and apparently I have to import entire notebooks. I just tested the Windows desktop version as well. It looks like it has to connect to my EN account. I can't import ENEX files. I just tried Notion as well. Same issues. How lame!!! So it looks like I have to figure out how to resolve these performance issues I'm having with QON.

netguerrilla12 commented 2 years ago

I just found out I have 15 GB available in my Google Drive account. That should be more than enough capacity for what I want to use it for. I'm going to do some testing with Google Drive.

netguerrilla12 commented 2 years ago

Google Drive is out. Its response times were worse than sync.com. 👎

pbek commented 2 years ago

36.1 MB of plain text is no joke neither. 😆 maybe you can try to turn off features, like note counts and counts for search results... Maybe also just ignore all external note folder changes in the General settings. Do you really need that many notes at the same time? Maybe just split them in multiple note folders.

What happens in the log when you create a new note? best clear the log before creating a new note (right mouse click on the log panel).

Could you explain to me in a little more detail how you handle syncing?

I sync my note folder to Nextcloud. https://www.qownnotes.org/getting-started/concept.html that's basically my setup.

Do I move to another notes app?

QON uses just plain text files that are in-memory as long you are using the note folder, that's very fast as long as you don't need to read all files again and again all the time. I guess any "normal" note app will fail with the size of your data. At that size maybe you really need something database driven (e.g. mysql) with an index service (like Apache Solr).

netguerrilla12 commented 2 years ago

Thanks for your suggestions. I've already eliminated a lot of old notes (like several thousand). Joplin takes awhile to start but once it starts it doesn't seem to have these performance issues. I'm hosting my own Nextcloud environment on a Namecheap domain. Thar's what I'm using for the Joplin files.

I can't stay with Joplin because I started getting PUT errors that I can't seem to resolve unless I blow everything away on the failing devices and start over. I started with Evernote which of course uses some sort of DB. I think they use SQLite. I thought of using my Nextcloud environment for QON. Problem is, I'm running out of space on that domain so I'd have to get rid of the Joplin files first. I can probably go ahead and close this issue. Thanks for your assistance.

pbek commented 2 years ago

Host your own instance of Nextcloud at home. 😉