Created a fieldable_panel_pane
This is the name which is too long to fit:
> default:fieldable_panels_pane:sng_homepage_slideshow_fpp.default:fieldable_panels_pane:sng_homepage_slideshow_fpp:default:default
String data, right truncated: 1406 Data too long for column 'name' at row 1: INSERT INTO {ctools_object_cache} (sid, obj, name, data, updated) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4); Array
(
[:db_insert_placeholder_0] => swDkW9XArKRt3jDlN9mk4n-4USmVK6S2a4rAYlycUBE
[:db_insert_placeholder_1] => panelizer_display_cache
[:db_insert_placeholder_2] => default:fieldable_panels_pane:sng_homepage_slideshow_fpp.default:fieldable_panels_pane:sng_homepage_slideshow_fpp:default:default
[:db_insert_placeholder_3] => O:8:"stdClass":2:{s:7:"display";O:14:"panels_display":18:{s:4:"args";a:0:{}s:7:"content";a:2:{i:3;O:8:"stdClass":15:{s:3:"pid";s:1:"3";s:3:"did";s:1:"3";s:5:"panel";s:11:"contentmain";s:4:"type";s:12:"entity_field";s:7:"subtype";s:…
Comment | File | Size | Author |
---|---|---|---|
#7 | ctools-increase-field-size-2575673-7-D7.patch | 1.05 KB | darrenwh |
Comments
Comment #2
Rudi Teschner CreditAttribution: Rudi Teschner commentedI encountered the same problem while panelizing paragraphs. The name is too short and I solved it on my system by increasing the size of the name field from varchar(128) to varchar(192).
I would prefer to not shorten / cut paragraph machine names and field / panelizer display names because of readability and maintainability.
The question is, does such a change have a negative impact on the ctools module?
Comment #3
AlexKirienko CreditAttribution: AlexKirienko at Adyax commentedI have faced same issue. If you use Field collection item within field collection item - you will get such error.
Increasing size of name column from 128 to 192 solved issue for me.
Comment #4
darrenwh CreditAttribution: darrenwh as a volunteer and at Investis Digital commentedSo any objections to just updating name field to 255? Attaching patch...
Comment #5
darrenwh CreditAttribution: darrenwh as a volunteer and at Investis Digital commentedAdjusted comment
Comment #6
rivimeyHi Darren, quick review. A couple of issues, nothing major.
Comment: 128 needs changing.
Trailing space on line: wil fail to commit.
Comment #7
darrenwh CreditAttribution: darrenwh as a volunteer and at Investis Digital commentedOK updated
Comment #8
rivimeyGood to go :-)
Comment #11
japerryHad to refactor the patch a little to work with the ctools schema stuff. but otherwise, looks good. Committed.
Comment #13
incarnare CreditAttribution: incarnare commentedWhen updating (on OVH hosting provider), I got the following error:
Comment #14
torotil CreditAttribution: torotil at more onion commentedThis causes another issue for me too: I tend prefer to use MyISAM tables for my local development installations. This increases the performance for me by factor 2-3. This change breaks compatibility with MyISAM.
Anyway a module using ctools_object_cache should make sure that the names it uses are not longer than the column size in this table. That’s something panels should take care of in this case.
Comment #15
Rudi Teschner CreditAttribution: Rudi Teschner commentedIncreasing size of the key field alone shouldnt break compatibility of MyISAM, neither should it degrade performance by 200-300%.
While it is true that key size could have an influence on performance, this should (from my understanding) only apply if a table has too many indizes or the index for the table has not been refreshed / recreated properly.
http://web.synametrics.com/top10performancetips.htm:
Related issue: https://www.drupal.org/project/ctools/issues/2941920 with the aim to replace three primary key fields by one aggregated primary key.
Comment #16
torotil CreditAttribution: torotil at more onion commented@Rudi: MyISAM performes 2-3 faster for Drupal, if you don’t need transactions. For live sites you definitely want transactions but for development it’s viable to use MyISAM to decrease the time for needed for running tests (and increases your efficiency).
So no the increased index size doesn’t deteriorate performance on its own, but it makes the primary key bigger than the 1000Bytes MyISAM can deal with. Thereby making it impossible to use MyISAM for development purposes. Thereby decreasing performance for development work.
https://dev.mysql.com/doc/refman/5.7/en/myisam-storage-engine.html
Comment #17
torotil CreditAttribution: torotil at more onion commented… also increasing the column to 255chars does not actually fix the original problem.
Comment #18
Rudi Teschner CreditAttribution: Rudi Teschner commentedAh ok, thanks for the clarification. :)
In the related issue they changed the content of the name primary key from "name" to "md5(name)", so it will probably solve the myisam issues that surfaced from this issue as well. The problem is, that there are still some update issues with the latest suggested patches, but I think a solution should just be a matter of days.