Unresponsive window after update

I updated to 1.0 and then my cursor window started freezing and no matter what I’ve tried it’s not working:

  • tried re-installing cursor
  • clicked keep waiting 5x

Other projects are working, but I need to work on this codebase. How can I fix this?

2 Likes

What do you mean “check your computer”? The only project I’m having issues with is this particular one.

Same here. I restarted Cursor because it deleted huge blocks of code after the usual Diff timeout error. When I reopened, it said I was on version 1.0 and now nothing works.

1 Like

+1
+1
+1

the same issue

Hey, this issue is usually related to a large chat history in your project. To solve the problem, try manually deleting most of the history, possibly the oldest chats. You can also try renaming or moving the project. This will help you quickly clear the history.

Additionally, you can delete the history by navigating to this path and sorting the folders by modification date. Choose the one that was used recently, you can delete it or save a backup just in case:

Windows: %APPDATA%\Cursor\User\workspaceStorage
macOS: ~/Library/Application Support/Cursor/User/workspaceStorage
Linux: ~/.config/Cursor/User/workspaceStorage

If your history is important to you, you can try exporting it using this extension:

1 Like

Got it, thank you. Seems it was the chat history, but I recall I had started a new chat conversation, given it was getting pretty long. How can I prevent this in the future?

For example, is it due to one individual chat or in general for one project? if it’s one chat, then maybe I have to start new chats for every portion of code?

I think this is the total number of chats in one project, you can delete unnecessary chats from time to time, for example, the oldest ones.

Got it. How can one determine when to do this? It wasn’t like a extensively long project I had for weeks. Cursor should probably do this btw since you have the data on it and also the ability to “archive” perhaps

Cursor has a 100MB limit for storing chat history, making it unsuitable for long-term storage. When this limit is exceeded, application performance issues begin. It is recommended to export the history using the mentioned extension and maintain order by deleting unnecessary chats.

This just happened to me again, although I deleted several threads of conversation @deanrie
I guess I have to delete it all everyday if I code a lot?

I understand the limit, but I think it can be very difficult for a user to monitor and measure, especially your power users.

Deleting history isn’t really a solution and less than ideal ?

I’ve had similar issue with crippling freezes to my whole PC. The update to the state.vscdb was deadlocking everything.

I’ve solved it since then by having a script that moves that file to my /tmp directory which is of type tmpfs (RAM memory), issue completely disappeared since then :slight_smile: Below is the script if you’d like to try it.

#!/bin/bash

Source and destination paths

BACKUP_DIR=“$HOME/.config/Cursor/User/globalStorage”
SOURCE_FILE=“${BACKUP_DIR}state.vscdb”
TEMP_DIR=“/tmp/cursor_state”
TEMP_FILE=“$TEMP_DIR/state.vscdb”
BACKUP_FILE=“$BACKUP_DIR/state.vscdb_backup”

Function to create backup

create_backup() {
# Create backup directory if it doesn’t exist
mkdir -p “$BACKUP_DIR”

# Create backup with timestamp
backup_file="$BACKUP_DIR/state.vscdb_backup"

# Copy the temp file to backup location
cp "$TEMP_FILE" "$backup_file"
echo "Backup created: $backup_file"

}

Create temp directory if it doesn’t exist

mkdir -p “$TEMP_DIR”

Check if backup exists and use it, otherwise use original file

if [ -f “$BACKUP_FILE” ]; then
echo “Using existing backup file”
cp “$BACKUP_FILE” “$TEMP_FILE”
else
# Check if source file exists
if [ ! -f “$SOURCE_FILE” ]; then
echo “Error: Neither backup nor source file exists”
exit 1
fi
echo “Using original source file”
cp “$SOURCE_FILE” “$TEMP_FILE”
fi

Remove existing symlink if it exists

if [ -L “$SOURCE_FILE” ]; then
rm “$SOURCE_FILE”
fi

Create symlink

ln -s “$TEMP_FILE” “$SOURCE_FILE”

echo “Cursor state file has been moved to $TEMP_FILE and symlinked”

Start backup loop in background

while true; do
create_backup
sleep 600 # Sleep for 10 minutes
done &

I posted a nice solution if you’d like to try :wink: For me it fixed the crippling freezes.

This is NOT a solution. The solution is to change the code and not bog down the UI thread. Move work like processing the chat history into a separate thread. The UI should NEVER freeze. It should always be responsive (like responds to the user input) and handle changes in workload (cancelling other threads) as needed.

If a user types and sends a new message, processing of the previous message / setting up of a request to the AI models should stop.

If the user presses stop, it should stop. This waiting for 30-45s to become responsive again is a horrible user experience.

If you want to fully process the chat history as part of the “I’m ready to send a new request” then add a little progress bar somewhere. But don’t block the UI thread to do it!

2 Likes

Yup, 100%. Please stop blocking UI thread. This is why I’m still on 0.48.9. Otherwise, the UI is way too laggy.

In all honesty ? I dont think that would help at all. This issue was crippling my WHOLE PC and not only the editor! Maybe if the changes were done “in memory” instead of on-disk then that should solve it ?

how do you manually delete the chat history if it crashes before you can interact with the UI and the location library/application support doesn’t show the cursor data?

re-naming the project file causes all kinds of configuration issues that we shouldn’t have to update whenever this happens

What changes else apart of chat wiped when you rename project?

Everything related to a specific project is also notepads.

1 Like