Bug #51234
closedException with EXT:sys_note is installed
Added by Philipp Gampe over 11 years ago. Updated about 6 years ago.
100%
Description
As soon as the system extension "sys_note" installed, the following exception is shown in the right column of the backend, whenever I open the page or list module:
#1247602160: Table 'typo3-master.tx_extbase_domain_model_backenduser' doesn't exist: SELECT tx_extbase_domain_model_backenduser.* FROM tx_extbase_domain_model_backenduser WHERE tx_extbase_domain_model_backenduser.uid = '1' LIMIT 1 (More information)
Seems that the mapping for the BackendUser-Modul to the "be_users" table is not made within sys_note.
Disabling the extension solves the issue, re-enabling it brings the issue back, reproducable. Tested on 6.1-dev based on rev. 75ee5d8f209
Files
sql_error.jpg (89.8 KB) sql_error.jpg | SQL-error | Kurt Gusbeth, 2013-09-18 14:13 |
Updated by Philipp Gampe over 11 years ago
I copied this one, as I cannot reopen it. But we need to find a way to reproduce the issue. Apparently, sometimes there is a wrong cache entry written. We really need to find out when and why this happens.
Updated by aimcom no-lastname-given about 11 years ago
I'm having trouble with a similar issue: In one of my extensions exists a mapping for the tableName tt_address
to another class. This works most of the time, but sometimes the mapping is not correct and the related cache entry in the table cf_extbase_datamapfactory_datamap
is created with a wrong table name - something like tx_example_domain_model_address
instead of tt_address
. It is quite hard to reproduce this error as it only occurs randomly. My TYPO3 version is 6.1.3.
Updated by Kurt Gusbeth about 11 years ago
- File sql_error.jpg sql_error.jpg added
I updatet from the version 6.1.1 to 6.1.5 and now I get this error message too.
I was not there in the version 6.1.1.
Updated by Philipp Gampe about 11 years ago
- Is Regression set to No
This seems to be some caching issue. I had an extension that used the backend user model too and this had the same problem.
What works in most cases is to visit the backend users module right after clearing the cache.
Updated by Philipp Gampe about 11 years ago
- Status changed from Needs Feedback to Accepted
Updated by Stefan Neufeind about 11 years ago
Unfortunately I also can't reproduce this on master. Have been running with sys_note enabled for quite a while now.
On the pages you encounter these errors with, do they have some special content-elements maybe?
Updated by Wouter Wolters about 11 years ago
I can also not reproduce this on my environments (master, 6.1 and 6.0). Have it running since it is rewritten and never had an exception.
Updated by Philipp Gampe about 11 years ago
It must be some kind of extbase caching issue. Somehow the TS settings for the table and properties mapping are not loaded which results in this issue.
It does not happen in the page or list module for me, nor in the backend users module, but in a custom module. Most likely this is some kind of race condition and a cache entry is written with too few information and later taken as granted.
Updated by Stefan Neufeind about 11 years ago
- extract a list of cache-files loaded for that request
- move away the files one-by-one (hope that works) and perform the request again to narrow it down which cache-file might cause this
Let's hope we don't end up with a huge file for "everything" :-)
Updated by Philipp Gampe about 11 years ago
It is the cf_extbase_datamapfactory_datamap
cache. Somehow the the datamap is not populated with the configuration form modules.tx_beuser.
, but only with config.tx_extbase.
.
This seems to work with the backend users module, and then the cache entry is populated correctly, but if you call another BE module first (which uses the be users repository), then there is a wrong cache entry for that model.
Updated by Philipp Gampe about 11 years ago
The modules key of the template is only loaded for the specific plugin. Thus modules.tx_beuser.
is only available if you actually call the beuser module.
The persistence settings need to be moved to the global config.tx_extbase.
key that is available to all extensions.
Updated by Philipp Gampe about 11 years ago
- Assignee set to Philipp Gampe
Will prepare a patch for this.
Updated by Gerrit Code Review about 11 years ago
- Status changed from Accepted to Under Review
Patch set 1 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/23967
Updated by Gerrit Code Review about 11 years ago
Patch set 2 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/23967
Updated by Gerrit Code Review about 11 years ago
Patch set 3 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/23967
Updated by Gerrit Code Review about 11 years ago
Patch set 1 for branch TYPO3_6-1 has been pushed to the review server.
It is available at https://review.typo3.org/24005
Updated by Gerrit Code Review about 11 years ago
Patch set 1 for branch TYPO3_6-0 has been pushed to the review server.
It is available at https://review.typo3.org/24006
Updated by Philipp Gampe about 11 years ago
- Status changed from Under Review to Resolved
- % Done changed from 50 to 100
Applied in changeset 68e91ccaa14166d7a881a42b4a987924c1462963.
Updated by Frank no-lastname-given about 11 years ago
Thanks for the patch! I copied the patch Set No. 4 (https://review.typo3.org/#/c/23967/4/typo3/sysext/beuser/Configuration/TypoScript/setup.txt) into my 6.1.5 installation, deleted cache via Install Tool, had a look into the TSOB (could expand config.tx_extbase-branch to BackendUser/BackendUserGroup, not any further), but them same error occurs using eg. list/page module. Did I apply the patch like it should?
I also insert the TS-Code into my main template (http://wiki.typo3.org/Exception/CMS/1247602160). This doesn't work.
As a workaround I deactivated sys_note. Works.
Updated by Bernhard Kraft almost 11 years ago
This bug still occurs in 6.2.0beta4.
Can it have to do with charset/collation being set to latin1 instead of utf-8?
I changed database charset to utf8_general_ci and dropped/recreated all "cf_" cache tables. Still doesn't work. I get:
#1247602160: Table 't3_ffmoerbisch.tx_extbase_domain_model_backenduser' doesn't exist: SELECT tx_extbase_domain_model_backenduser.* FROM tx_extbase_domain_model_backenduser WHERE tx_extbase_domain_model_backenduser.uid = '2' LIMIT 1 (More information)
Uninstalling sys_note helped.
Updated by Philipp Gampe almost 11 years ago
@Bernard, are you sure that you cleared all caches and that you do not override the TS template somehow?
Updated by Daniel Minder over 10 years ago
After some hours of debugging I found out that the error was sitting in front of the computer :)
Indeed, there was a "config <..." sitting in a template... Now, I see the "config.tx_extbase" settings in the TypoScript Object Browser and everything works fine - even with sys_notes :-)
Updated by Bernhard Kraft over 10 years ago
Yeah. But at what end of the line? :)
In my opinion it is still strange to have TypoScript parsed in Backend. TypoScript was something intended purely for the frontend. By purpose.
Anyways. When I remove the "config < page.config" the mentioned error is gone but now I have:
Oops, an error occurred! More than one request handler with the same priority can handle the request, but only one handler may be active at a time!