David,

I opened ticket # 151.  And I have some test cases written for uppercase
dbTableName and dbColumnName.  They are very simple-minded re-use of the Dog
mapped class, but they do demostrate the same sort of failure behavior I was
seeing in 1.1-SNAPSHOT, this time against the pre-145-fix source tree.

I'll send you the updated
lift-persistence/lift-mapper/src/test/scala/net/liftweb/mapper/MapperSpecs.scala
file with the new tests (fails 32 tests with just Derby, H2, and H2 in
Memory... fails an additional 10 tests if I add MySQL provider that matches
your test setup), and the output I'm seeing from the surefire-reports.

Thanks again for the help, Troy

On Sat, Oct 31, 2009 at 8:56 AM, Troy Noble <econop...@gmail.com> wrote:

> Thanks for your support... and I'm very sorry to be the instigator of the
> breakage.  I feel really bad that everything broke for all the MySQL and SQL
> server users (I gotta believe I'm not the only freak still using MySQL or
> SQL Server ;->)
>
> The only way to INTEGRATION test right now would be to have a JDBC driver
> that requires case sensitive names... which right now is MySQL in my world.
> Most of the other RDBMSs don't have this "feature". So I don't know if I
> could contribute any automated tests that would work just within the context
> of Liftweb (or with optional embedded database) without requiring a MySQL
> server as well.  Unless we were to add a test-only attribute in the Mapper
> classes that turns on quoting of column & field name and uses an embedded H2
> in-memory database.  Yuck!
>
> I would be willing to contribute some UNIT tests if I can figure out where
> to do it.  Is there some extractor/observer style mechanism in the Mapper
> classes that would allow me to intercept the SQL statements that can be run
> in the absence of the DBMS driver?
>
> Thanks again, Troy
>
>
> On Sat, Oct 31, 2009 at 8:09 AM, David Pollak <
> feeder.of.the.be...@gmail.com> wrote:
>
>> I'm going to revert the fix.
>>
>> I'm going to add tests for mixed-case column and table names.  If you care
>> to donate some of these tests, that'd be great.
>>
>> Please open a ticket.
>>
>>
>> On Sat, Oct 31, 2009 at 5:35 AM, Troy Noble <econop...@gmail.com> wrote:
>>
>>> After the fix, I'm having a different problem now with latest
>>> 1.1-SNAPSHOT (10/30 1:54:48PM build) with tables in the DB that have
>>> uppercase anywhere in either the dbTableName or dbColumnName name... the
>>> Mapper is creating SQL that throws exceptions due to unknown column in MySQL
>>> (which is case sensitive on naming).
>>>
>>> David, I sent you an offline e-mail with all the details.  I can open
>>> another ticket if you want.  I am willing to keep testing with MySQL if you
>>> want as we work through these issues.
>>>
>>> I wish H2 or one of the other embedded databases supported case sensitive
>>> table & column names so I could give you a tidy offline test case.  H2 does
>>> not appear to support case sensitive names unless you surround them with
>>> double quotes such as "TABLE_NAME".
>>>
>>> I know I'm not supposed to use MySQL per earlier postings on this list,
>>> but I have about 15 databases already existing in MySQL and we wanted to
>>> start using Lift with some of them.  It'll take me quite some time to
>>> re-target Postgres or other DBMS.
>>>
>>> Thanks again for all your help, Troy
>>>
>>>
>>> On Fri, Oct 30, 2009 at 4:13 PM, David Pollak <
>>> feeder.of.the.be...@gmail.com> wrote:
>>>
>>>>
>>>>
>>>> On Fri, Oct 30, 2009 at 3:06 PM, Troy Noble <econop...@gmail.com>wrote:
>>>>
>>>>> Thanks. I'll give it try.  Dumb newbie question though... how do I
>>>>> access the update?  Git + build from github, or can I just grab the latest
>>>>> 1.1-SNAPSHOT?
>>>>>
>>>>
>>>> Check http://hudson.scala-tools.org/job/Lift/
>>>>
>>>> You can see if the latest has built.
>>>>
>>>> Then do: mvn -U clean install jetty:run
>>>>
>>>> The "-U" forces Maven to check the repositories for the latest.
>>>>
>>>>
>>>>>
>>>>> Thanks again, Troy
>>>>>
>>>>> On Fri, Oct 30, 2009 at 3:01 PM, David Pollak <
>>>>> feeder.of.the.be...@gmail.com> wrote:
>>>>>
>>>>>> Turns out this was the problem.  Some RDBMSs are case insensitive on
>>>>>> table/column names... others are not.
>>>>>>
>>>>>> I committed a fix (now on master thanks to fast review board
>>>>>> turn-around) that causes all table and column names to lower case for all
>>>>>> SQL transactions.
>>>>>>
>>>>>> 2009/10/30 Marcin Mielżyński <l...@gazeta.pl>
>>>>>>
>>>>>>
>>>>>>> I have seen EXACTLY same behavior when dbColumnName returned
>>>>>>> _upcased_ names
>>>>>>>
>>>>>>> lopex
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Lift, the simply functional web framework http://liftweb.net
>>>>>> Beginning Scala http://www.apress.com/book/view/1430219890
>>>>>> Follow me: http://twitter.com/dpp
>>>>>> Surf the harmonics
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Lift, the simply functional web framework http://liftweb.net
>>>> Beginning Scala http://www.apress.com/book/view/1430219890
>>>> Follow me: http://twitter.com/dpp
>>>> Surf the harmonics
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>> --
>> Lift, the simply functional web framework http://liftweb.net
>> Beginning Scala http://www.apress.com/book/view/1430219890
>> Follow me: http://twitter.com/dpp
>> Surf the harmonics
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to