Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: Transactions from CSV import successfully, but they don't actually show up anywhere #1662

Open
buresdv opened this issue Jan 23, 2025 · 5 comments
Labels
Community This is a great issue for community members to work on

Comments

@buresdv
Copy link

buresdv commented Jan 23, 2025

Describe the bug
I'm trying to import new transactions from a CSV file. The import finishes successfully, but the transactions never show up anywhere in the app.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Settings → Imports
  2. Click New Import to start the import wizard, and select Import transactions
  3. Import the CSV as usual. I'm using the ; separator
  4. Transactions get imported successfully, but they don't show up

Expected behavior
Transactions get imported and show up in graphs, overviews, etc.

What version of Maybe are you using?
Self-hosted, version 0.3.0

What operating system and browser are you using?
Server:

  • Fedora Server 41
  • Docker Compose

Client:

  • MacBook Air M3
  • Safari 18.2

Screenshots / Recordings
List of imports, which were completed successfully

The transactions are not in the overview (September 27th is the date of the last transaction from the last quarter. I'm trying to import data from September until the end of December)

Additional context
Imports worked last time I tried them during the last quarter, around September 30th.

Here are the logs:
App
Database

And here's my Compose file:

services:

  app:
    image: ghcr.io/maybe-finance/maybe:latest
    volumes:
      - (app):/rails/storage
    ports:
      - 8292:3000
    restart: unless-stopped
    environment:
      SELF_HOSTED: "true"
      RAILS_FORCE_SSL: "false"
      RAILS_ASSUME_SSL: "false"
      GOOD_JOB_EXECUTION_MODE: async
      SECRET_KEY_BASE: ${SECRET_KEY_BASE:?}
      DB_HOST: postgres
      POSTGRES_DB: ${POSTGRES_DB:-maybe_production}
      POSTGRES_USER: ${POSTGRES_USER:-maybe_user}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?}
    depends_on:
      postgres:
        condition: service_healthy

  postgres:
    image: postgres:16
    restart: unless-stopped
    volumes:
      - (database):/var/lib/postgresql/data
    environment:
      POSTGRES_USER: ${POSTGRES_USER:-maybe_user}
      POSTGRES_DB: ${POSTGRES_DB:-maybe_production}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?}
    healthcheck:
      test: [ "CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB" ]
      interval: 5s
      timeout: 5s
      retries: 5

volumes:
  app-storage:
  postgres-data:
@zachgoll
Copy link
Collaborator

@buresdv thanks for the report. I tried reproducing given the provided steps but was unable to:

CleanShot.2025-01-23.at.18.03.41.mp4

If possible, could you provide a minimal CSV input that causes this behavior? My guess is that there is some small formatting / data issue that is (incorrectly) silently failing on us.

@zachgoll zachgoll added ℹ️ Needs info Further information is requested and removed 🐛 Bug labels Jan 23, 2025
@buresdv
Copy link
Author

buresdv commented Jan 24, 2025

Hey @zachgoll, thank you for the fast response. Here's a minimal CSV file:

Minimal.Example.csv

Funnily enough, this example actually killed my install. Trying to import that CSV crashed the app, and I can't get back in:

Luckily I recorded the entire process:

Zaznam.obrazovky.2025-01-24.v.14.10.38.mov

And here are the app logs: https://pastebin.com/iiBEgENy

And these are the logs when I try to restart the app:

EDIT 1

I was able to get back into the app after waiting for a few minutes. Here are the logs: https://pastebin.com/5PFEZ4vx

The import still "Completed", but the transaction is still not available.

EDIT 2

I have also noticed that the app made over 1000 requests to synth, which completely drained my API calls (I had only around 10 calls used when I started the process)

Image

@zachgoll zachgoll removed the ℹ️ Needs info Further information is requested label Jan 27, 2025
@zachgoll
Copy link
Collaborator

@buresdv sorry about the app crash! But thanks for the screen recording, this is super helpful.

  • RE Synth credits: do you have this setting enabled? Data enrichment consumes Synth credits and will clean up your transaction names / merchants, but costs Synth credits. It is disabled by default, but when it was first introduced, it was enabled by default, so if you had an instance running at that point, it may still be enabled.

Image

  • RE: 500 Crash - it appears based on the logs that this recent commit caused it - 3140835. I'll take a look at this and see what's going on. Looks like we may need to allocate a few more connections for the DB pool here.

Once I get the 500 error figured out, I'll take a look at that minimal example and see what's going on with the import side of things.

@zachgoll zachgoll added the Community This is a great issue for community members to work on label Jan 27, 2025
@buresdv
Copy link
Author

buresdv commented Jan 27, 2025

@zachgoll You're right, the data enrichment was turned on. I had no idea about it.

Thank you for your effort!

@zachgoll
Copy link
Collaborator

@buresdv thanks for confirming. We'll take a look into those other issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Community This is a great issue for community members to work on
Projects
None yet
Development

No branches or pull requests

2 participants