Fork me on GitHub

blob, longblob, max length and adodb dictionary  Bottom

  • Hi,

    since I upgraded to 1.2.3 from a 1.1.x installation I had serious problems sending (bigger) mails with advMailer.

    advmailer stores the mail fully serialized in its queue and passes the mail to the Mailer module later.

    The mail get's stored into the database and I used Longtext before. Using blob helped in some cases (seems to be bigger than longtext) and using mysql's longblob type helped.

    now the question: How can I tell the module advMailer that this row always should be longblob?
    Is there a field type that is not limited in characters?

    I just found B for type Blob but Blob is not enought...

    I used advMailers for the newsletter for the last 10 months without problems. Have there been changes maybe in DButil that effects the storing of (really) long text?

    Thanks for your help,

    Flo



    Edited by quan on Jul 03, 2010 - 01:27 PM.

    --
    ifs-net.de -- zksoft.de
  • You need XL or X2.

    Regards,

    Drak

    --
    Zikula Lead Developer
    Board Member of the Zikula Foundation
    Follow me on twitter.com/zikuladrak
  • As I wrote I took XL as default for this module and the table row.

    XL seems to be limited (to I don't know how many characters) and did not work correctly.

    from the web:

    Quote

    X2: Multibyte varchar (largest size)


    What then is the limit of X2?

    Flo

    --
    ifs-net.de -- zksoft.de
  • quan

    What then is the limit of X2?


    Depends on the database system you are using, but I assume like most you are on MySQL.

    X2 translates to LONGTEXT which can handle up to 2^32 bytes (not necessarily chars, since Unicode is multibyte)

    Curiously, XL also translates to LONGTEXT, so you should have had the same result with either.

    B is LONGBLOB, same size but the data is treated as pure binary data instead of handled like character data (unicode multibyte character meanings are lost).

    You can look at MySQL 5.1 Data Storage Requirements (or MySQL 5.0 Data Storage Requirements, but they are essentially the same), and decipher the maximum size by the formulae they give for storage requirements.

    (Note that in 1.3 we are switching to Doctrine for DB services, so the translation might or might not change. The above is based on ADODB used in 1.2.x.)

    --
    - Robert

    Ohloh profile for Robert Burkhead

    Stack Overflow profile for RobertB at Stack Overflow, Q&A for professional and enthusiast programmers
  • 0 users

This list is based on users active over the last 60 minutes.