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

Must restart CSV import until all transactions are imported #3272

Closed
2 tasks done
AndreiGavriliu opened this issue Apr 17, 2020 · 14 comments
Closed
2 tasks done

Must restart CSV import until all transactions are imported #3272

AndreiGavriliu opened this issue Apr 17, 2020 · 14 comments
Labels
bug Verified and replicated bugs and issues.

Comments

@AndreiGavriliu
Copy link

AndreiGavriliu commented Apr 17, 2020

I am running Firefly III version 5.2.2 in Docker (OKD).

Import jobs via docker-csv-importer need to run multiple times untill all transactions are imported

Description
I am trying to catch up and to import about 5-600 transactions. Unfortunately I need to restart the import job until all transactions get imported. I checked and evetualy all rows are imported.

Bonus points

[2020-04-17 20:35:14] production.ERROR: Status code is 500: {"message":"Internal Firefly III Exception. See log files.","exception":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError"} {"exception":"[object] (GrumpyDictator\\FFIIIApiSupport\\Exceptions\\ApiHttpException(code: 0): Status code is 500: {\"message\":\"Internal Firefly III Exception. See log files.\",\"exception\":\"Symfony\\\\Component\\\\Debug\\\\Exception\\\\FatalThrowableError\"} at /var/www/html/vendor/firefly-iii/api-support-classes/src/Request/PostTransactionRequest.php:70)
[stacktrace]
#0 /var/www/html/app/Services/Import/Routine/APISubmitter.php(110): GrumpyDictator\\FFIIIApiSupport\\Request\\PostTransactionRequest->post()
#1 /var/www/html/app/Services/Import/Routine/APISubmitter.php(53): App\\Services\\Import\\Routine\\APISubmitter->processTransaction(7, Array)
#2 /var/www/html/app/Services/Import/ImportRoutineManager.php(170): App\\Services\\Import\\Routine\\APISubmitter->processTransactions(Array)
#3 /var/www/html/app/Console/StartImport.php(58): App\\Services\\Import\\ImportRoutineManager->start()
#4 /var/www/html/app/Console/Commands/Import.php(102): App\\Console\\Commands\\Import->startImport('2019/08/01,DE24...', Array)
#5 [internal function]: App\\Console\\Commands\\Import->handle()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(32): call_user_func_array(Array, Array)
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(36): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(90): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(34): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(592): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(134): Illuminate\\Container\\Container->call(Array)
#12 /var/www/html/vendor/symfony/console/Command/Command.php(255): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(121): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#14 /var/www/html/vendor/symfony/console/Application.php(912): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#15 /var/www/html/vendor/symfony/console/Application.php(264): Symfony\\Component\\Console\\Application->doRunCommand(Object(App\\Console\\Commands\\Import), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#16 /var/www/html/vendor/symfony/console/Application.php(140): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(93): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(129): Illuminate\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#19 /var/www/html/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#20 {main}
"}

In PostTransactionRequest.php line 70:

  Status code is 500: {"message":"Internal Firefly III Exception. See log fil
  es.","exception":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError
  "}

The node has about 32Gb RAM and 8 cores, so there should not be any memory issues. This is a screenshot of my memory usage. The peaks are 5 minutes apart - the import script runs as a cronjob (without concurrent runs)
Screenshot 2020-04-17 at 22 48 08

@JC5
Copy link
Member

JC5 commented Apr 18, 2020

Mmmm. It says Firefly III runs into an error. Do you have that error perhaps?

@AndreiGavriliu
Copy link
Author

This is part of the current latest log entry:

# tail -f storage/logs/csv-import-2020-04-18.log
[2020-04-18 07:19:58] production.ERROR: Submission error: 0 ["Duplicate of transaction #3820."]
[2020-04-18 07:19:58] production.DEBUG: Now in storeJobStatus(izGpruF1bUtrGGid): waiting_to_start
[2020-04-18 07:19:58] production.DEBUG: Done with storing.
[2020-04-18 07:19:58] production.ERROR: transactions.0.description: Duplicate of transaction #3820. (original value: "[REDACTED]")
[2020-04-18 07:19:58] production.DEBUG: Submitting to Firefly III: {"group_title":null,"error_if_duplicate_hash":true,"transactions":[{"type":"withdrawal","date":"2019-10-28","currency_id":1,"currency_code":null,"amount":"[REDACTED]","amount_modifier":"1","description":"[REDACTED]","source_id":1,"source_name":null,"destination_id":null,"destination_name":null,"destination_iban":"[REDACTED]","original_source":"jc5-csv-import-v1.0.3","tags":[],"source_iban":null,"source_number":null,"source_bic":null,"destination_number":null,"destination_bic":null}]}
[2020-04-18 07:19:59] production.ERROR: Status code is 500: {"message":"Internal Firefly III Exception. See log files.","exception":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError"} {"exception":"[object] (GrumpyDictator\\FFIIIApiSupport\\Exceptions\\ApiHttpException(code: 0): Status code is 500: {\"message\":\"Internal Firefly III Exception. See log files.\",\"exception\":\"Symfony\\\\Component\\\\Debug\\\\Exception\\\\FatalThrowableError\"} at /var/www/html/vendor/firefly-iii/api-support-classes/src/Request/PostTransactionRequest.php:70)
[stacktrace]
#0 /var/www/html/app/Services/Import/Routine/APISubmitter.php(110): GrumpyDictator\\FFIIIApiSupport\\Request\\PostTransactionRequest->post()
#1 /var/www/html/app/Services/Import/Routine/APISubmitter.php(53): App\\Services\\Import\\Routine\\APISubmitter->processTransaction(130, Array)
#2 /var/www/html/app/Services/Import/ImportRoutineManager.php(170): App\\Services\\Import\\Routine\\APISubmitter->processTransactions(Array)
#3 /var/www/html/app/Console/StartImport.php(58): App\\Services\\Import\\ImportRoutineManager->start()
#4 /var/www/html/app/Console/Commands/Import.php(102): App\\Console\\Commands\\Import->startImport('2019/08/01,DE24...', Array)
#5 [internal function]: App\\Console\\Commands\\Import->handle()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(32): call_user_func_array(Array, Array)
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(36): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(90): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(34): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(592): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(134): Illuminate\\Container\\Container->call(Array)
#12 /var/www/html/vendor/symfony/console/Command/Command.php(255): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(121): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#14 /var/www/html/vendor/symfony/console/Application.php(912): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#15 /var/www/html/vendor/symfony/console/Application.php(264): Symfony\\Component\\Console\\Application->doRunCommand(Object(App\\Console\\Commands\\Import), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#16 /var/www/html/vendor/symfony/console/Application.php(140): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(93): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(129): Illuminate\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#19 /var/www/html/artisan(37): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#20 {main}
"}

is there anywhere else I can check?

@JC5
Copy link
Member

JC5 commented Apr 18, 2020

Yes, check out Firefly III itself. In the mean time, I'll build something that will make sure the CSV importer doesn't break when Firefly III throws 500 errors.

@AndreiGavriliu
Copy link
Author

Hi,

Firefly itself seems to be ok. Transactions are slowly created. The db gets populated accordingly (I think). When I restart the firefly container, however, i noticed two things:

  • the Mac Address is invalid
  • the personal access token gets invalidated (i need to generate a new one and update the docker csv importer)

Thanks,
Andrei

@JC5
Copy link
Member

JC5 commented Apr 18, 2020

That's strange, because this error message:

production.ERROR: Status code is 500: {"message":"Internal Firefly III Exception. See log files.","exception":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError"} {"exception":"[object] (GrumpyDictator\\FFIIIApiSupport\\Exceptions\\ApiHttpException(code: 0): Status code is 500: {\"message\":\"Internal Firefly III Exception. See log files.\",\"exception\":\"Symfony\\\\Component\\\\Debug\\\\Exception\\\\FatalThrowableError\"} at /var/www/html/vendor/firefly-iii/api-support-classes/src/Request/PostTransactionRequest.php:70)

Comes from Firefly III itself, not the CSV importer.

I recognize the stop/start troubles. This is a limitation in Laravel I haven't found a way around yet.

@JC5
Copy link
Member

JC5 commented Apr 18, 2020

Alright I've pushed a fix for the CSV importer (also Docker) that should make sure Firefly III handles 500 errors from Firefly III better.

@AndreiGavriliu
Copy link
Author

It went all the way through. Here are some errors I could find within the 31.000+ lines log :)

[2020-04-18 12:52:59] production.INFO: Created withdrawal [REDACTED]
[2020-04-18 12:52:59] production.DEBUG: Submitting to Firefly III: {"group_title":null,"error_if_duplicate_hash":true,"transactions":[{"type":"withdrawal","date":"2020-02-17","currency_id":1,"currency_code":null,"amount":"[REDACTED]","amount_modifier":
"1","description":"[REDACTED]","source_id":1,"source_name":null,"destination_id":null,"destination_name":null,"destination_iban":"[REDACTED]","original_source":"jc5-csv-import-v1.0.4","tags":[],"source_iban":null,"source_number":null,"
source_bic":"","destination_number":null,"destination_bic":null}]}
[2020-04-18 12:53:01] production.ERROR: Status code is 500: {"message":"Internal Firefly III Exception. See log files.","exception":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError"}
[2020-04-18 12:53:01] production.ERROR: #0 /var/www/html/app/Services/Import/Routine/APISubmitter.php(111): GrumpyDictator\FFIIIApiSupport\Request\PostTransactionRequest->post()
#1 /var/www/html/app/Services/Import/Routine/APISubmitter.php(55): App\Services\Import\Routine\APISubmitter->processTransaction(311, Array)
#2 /var/www/html/app/Services/Import/ImportRoutineManager.php(175): App\Services\Import\Routine\APISubmitter->processTransactions(Array)
#3 /var/www/html/app/Console/StartImport.php(58): App\Services\Import\ImportRoutineManager->start()
#4 /var/www/html/app/Console/Commands/Import.php(103): App\Console\Commands\Import->startImport('2019/08/01,DE24...', Array)
#5 [internal function]: App\Console\Commands\Import->handle()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(32): call_user_func_array(Array, Array)
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(36): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(90): Illuminate\Container\Util::unwrapIfClosure(Object(Closure))
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(34): Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Array, Object(Closure))
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(592): Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), Array, Array, NULL)
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(134): Illuminate\Container\Container->call(Array)
#12 /var/www/html/vendor/symfony/console/Command/Command.php(255): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(121): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
#14 /var/www/html/vendor/symfony/console/Application.php(912): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#15 /var/www/html/vendor/symfony/console/Application.php(264): Symfony\Component\Console\Application->doRunCommand(Object(App\Console\Commands\Import), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)
)
#16 /var/www/html/vendor/symfony/console/Application.php(140): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(93): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(129): Illuminate\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#19 /var/www/html/artisan(37): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#20 {main}
[2020-04-18 12:53:01] production.DEBUG: Now in storeJobStatus(4SAFzWgnDssuDqrj): waiting_to_start
[2020-04-18 12:53:01] production.DEBUG: Done with storing.

I can however confirm that at least this transaction I posted above was imported successfully...

I checked and apparently there are 14 such errors:

# grep "production.ERROR: Status code is 500:" import.log| wc -l
14

Maybe it's to fast? and the webserver has problems managing all those requests? maybe adding a small timeout between imports/requests might help?

Here's the resource usage during the last (complete) import.
Screenshot 2020-04-18 at 15 03 14

@JC5
Copy link
Member

JC5 commented Apr 18, 2020

Yeah that could work. But again, isn't there anything in the logs of Firefly III itself? So not the CSV importer but the Firefly III instance you're talking to? That should also complain about the 500 error.

@AndreiGavriliu
Copy link
Author

sorry for the delay. here's the firefly-iii logs from the period approx. like the one above:

[2020-04-18 12:52:56] local.ERROR: Exception when mailing: Address in mailbox given [] does not comply with RFC 2822, 3.6.2.
[2020-04-18 12:52:56] local.ERROR: Argument 2 passed to FireflyIII\Repositories\Account\AccountRepository::findByName() must be of the type array, null given, called in /var/www/firefly-iii/app/TransactionRules/Actions/SetSourceAccount.php on line 122 {"userId":1,"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Argument 2 passed to FireflyIII\\Repositories\\Account\\AccountRepository::findByName() must be of the type array, null given, called in /var/www/firefly-iii/app/TransactionRules/Actions/SetSourceAccount.php on line 122 at /var/www/firefly-iii/app/Repositories/Account/AccountRepository.php:188)
[stacktrace]
#0 /var/www/firefly-iii/app/TransactionRules/Actions/SetSourceAccount.php(122): FireflyIII\\Repositories\\Account\\AccountRepository->findByName('Dirk Rossmann G...', NULL)
#1 /var/www/firefly-iii/app/TransactionRules/Actions/SetSourceAccount.php(76): FireflyIII\\TransactionRules\\Actions\\SetSourceAccount->findAssetAccount('Asset account')
#2 /var/www/firefly-iii/app/TransactionRules/Processor.php(292): FireflyIII\\TransactionRules\\Actions\\SetSourceAccount->act(Object(FireflyIII\\Models\\TransactionJournal))
#3 /var/www/firefly-iii/app/TransactionRules/Processor.php(184): FireflyIII\\TransactionRules\\Processor->actions()
#4 /var/www/firefly-iii/app/TransactionRules/Engine/RuleEngine.php(153): FireflyIII\\TransactionRules\\Processor->handleTransactionJournal(Object(FireflyIII\\Models\\TransactionJournal))
#5 /var/www/firefly-iii/app/Handlers/Events/StoredGroupEventHandler.php(58): FireflyIII\\TransactionRules\\Engine\\RuleEngine->processTransactionJournal(Object(FireflyIII\\Models\\TransactionJournal))
#6 [internal function]: FireflyIII\\Handlers\\Events\\StoredGroupEventHandler->processRules(Object(FireflyIII\\Events\\StoredTransactionGroup))
#7 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php(388): call_user_func_array(Array, Array)
#8 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php(218): Illuminate\\Events\\Dispatcher->Illuminate\\Events\\{closure}('FireflyIII\\\\Even...', Array)
#9 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(477): Illuminate\\Events\\Dispatcher->dispatch('FireflyIII\\\\Even...')
#10 /var/www/firefly-iii/app/Api/V1/Controllers/TransactionController.php(312): event(Object(FireflyIII\\Events\\StoredTransactionGroup))
#11 [internal function]: FireflyIII\\Api\\V1\\Controllers\\TransactionController->store(Object(FireflyIII\\Api\\V1\\Requests\\TransactionStoreRequest))
#12 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): call_user_func_array(Array, Array)
#13 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\\Routing\\Controller->callAction('store', Array)
#14 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Route.php(219): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(FireflyIII\\Api\\V1\\Controllers\\TransactionController), 'store')
#15 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Route.php(176): Illuminate\\Routing\\Route->runController()
#16 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Router.php(681): Illuminate\\Routing\\Route->run()
#17 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#18 /var/www/firefly-iii/app/Api/V1/Controllers/TransactionController.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(153): FireflyIII\\Api\\V1\\Controllers\\TransactionController->FireflyIII\\Api\\V1\\Controllers\\{closure}(Object(Illuminate\\Http\\Request), Object(Closure))
#20 /var/www/firefly-iii/app/Http/Middleware/Binder.php(79): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): FireflyIII\\Http\\Middleware\\Binder->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#22 /var/www/firefly-iii/app/Http/Middleware/Authenticate.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#23 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): FireflyIII\\Http\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure), 'api')
#24 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Router.php(683): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#26 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Router.php(658): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#27 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Router.php(624): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#28 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Routing/Router.php(613): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#29 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(170): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#30 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#31 /var/www/firefly-iii/app/Http/Middleware/InstallationId.php(59): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#32 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): FireflyIII\\Http\\Middleware\\InstallationId->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#33 /var/www/firefly-iii/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#34 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Fideloper\\Proxy\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#40 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#41 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#42 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /var/www/firefly-iii/app/Http/Middleware/SecureHeaders.php(51): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): FireflyIII\\Http\\Middleware\\SecureHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(145): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#47 /var/www/firefly-iii/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#48 /var/www/firefly-iii/public/index.php(76): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#49 {main}
"}
10.128.0.1 - - [18/Apr/2020:12:52:54 +0000] "POST /api/v1/transactions HTTP/1.1" 500 1016 "-" "GuzzleHttp/6.5.1 curl/7.64.0 PHP/7.3.15"
[2020-04-18 12:52:57] local.INFO: Will trigger duplication alert for this journal.
10.128.0.1 - - [18/Apr/2020:12:52:56 +0000] "POST /api/v1/transactions HTTP/1.1" 200 2451 "-" "GuzzleHttp/6.5.1 curl/7.64.0 PHP/7.3.15"
[2020-04-18 12:53:00] local.INFO: Will trigger duplication alert for this journal.
[2020-04-18 12:53:01] local.ERROR: Exception is: {"class":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError","errorMessage":"Argument 2 passed to FireflyIII\\Repositories\\Account\\AccountRepository::findByName() must be of the type array, null given, called in \/var\/www\/firefly-iii\/app\/TransactionRules\/Actions\/SetSourceAccount.php on line 122","time":"Sat, 18 Apr 2020 12:53:01 +0000","file":"\/var\/www\/firefly-iii\/app\/Repositories\/Account\/AccountRepository.php","line":188,"code":0,"version":"5.2.2","url":"http:\/\/budget.gavriliu.com\/api\/v1\/transactions","userAgent":"GuzzleHttp\/6.5.1 curl\/7.64.0 PHP\/7.3.15","json":true}
[2020-04-18 12:53:01] local.ERROR: Exception when mailing: Address in mailbox given [] does not comply with RFC 2822, 3.6.2.

@JC5
Copy link
Member

JC5 commented Apr 18, 2020

Thx. I hoped 5.2.2 fixed that bug. I’ll pick it up!

@JC5 JC5 added bug Verified and replicated bugs and issues. and removed possible bug labels Apr 18, 2020
@JC5
Copy link
Member

JC5 commented Apr 19, 2020

I've pushed a fix (see above). I'd greatly appreciate it if you could hack it in your installation. It works for me(tm) but I could use the validation.

@AndreiGavriliu
Copy link
Author

I’ll set up another environment some time tomorrow and let you know how it works.

@AndreiGavriliu
Copy link
Author

I added those lines to the running container. The rules get applied now. I guess you can keep the changes for the next release.

Thanks for the quick fix!

@JC5 JC5 closed this as completed in 2cc326c Apr 22, 2020
@github-actions
Copy link
Contributor

github-actions bot commented May 3, 2021

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 3, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Verified and replicated bugs and issues.
Projects
None yet
Development

No branches or pull requests

2 participants