-
-
Notifications
You must be signed in to change notification settings - Fork 532
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
KeePass Import fails with large history #1729
Comments
Yes, the session id is broken in one case:
|
But even, when I fix this bug by replacing
in items.import.php, the import does not work for me (latest 'master' 617f151) but tells me, that my XML file isn't a Keepass XML file. |
The error shows that it is field Now it seems you have also so issue on your server. |
Thanks @nilsteampassnet, I wasn't aware upload-tmp-dir needed to be set in php.ini. For the original issue, I just ran through another test. Here's the error log without me editing the actual info out (my OP contained production info, sorry). The description is being duplicated to the login field when there is a lot of history. I've attached the test XML from this error test.txt. If you delete the entire
|
Steps to reproduce
Expected behaviour
There should be some way of sanitizing the data before it gets imported into the database, so histories get discarded, any large entries get ignored and reported back to the user, and the import should continue importing other good entries.
Actual behaviour
The error "Requested JSON parse failed." appears and the import stops. A will be imported but B and C will not.
Logs display an error:
Query: INSERT INTO
teampass_items(
label,
description,
pw,
pw_iv,
url,
id_tree,
login,
anyone_can_modify) VALUES [...snip...] <br />Error: Data too long for column 'login' at row 1<br />@"
In a database with 800+ entries, having one or more with a lot of history can prevent hundreds of other entries from being imported. Makes for a mess when trying to get started with Teampass.
As a workaround, I created a copy of the KeePass DB, ran database maintenance in Keepass to delete all histories older than 0 days, then exported to XML and imported to Teampass. This doesn't protect from entries with huge descriptions though.
Server configuration
Operating system:
Ubuntu 16.04 64-bit
Web server:
Apache/2.4.18 (Ubuntu)
Database:
mysql 5.7.17-0ubuntu0.16.04.2
PHP version:
PHP 7.0.15-0ubuntu0.16.04.4
Zend Engine v3.0.0 with Zend OPcache v7.0.15-0ubuntu0.16.04.4
Teampass version:
TeamPass 2.1.27
Updated from an older Teampass or fresh install:
Fresh Install
Client configuration
Browser:
Chrome/Firefox
Operating system:
WIn10 x64
Logs
Web server error log
Insert your webserver log here
Insert the Firebug log here
The text was updated successfully, but these errors were encountered: